是否有可与 Java 7 对抗的 Azure 服务总线版本?

Azure 服务总线的文档示例图片如下:

https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-java-how-to-use-queues#configure-your-application-to-use-service-bus

它使用java 8。此外,代码示例使用 Java 8 语法和函数。我有一个java 7的环境,我无法让它工作,因为java太旧了。

有谁知道 Azure 服务总线与 Java 7 的工作组合?我需要确定有效的版本,或者回答没有版本这样做。

我使用 Azure 服务总线的最新 1.2 版本进行测试。


HUX布斯
浏览 86回答 1
1回答

胡说叔叔

我检查了 Azure ServiceBus 的 maven 存储库列表,这些版本之后都是由 Java 8 通过 check 文件构建的,该版本是由 Java 1.6 构建的。因此,没有任何由Java 7或其他ealier Java版本编译的已发布的jar文件用于最新版本。0.9.8pom.xml0.9.81.x.x你的解决方法是手动从 GitHub 存储库下载 Azure ServiceBus 的源代码,以便自己在 maven 中编译它。你可以使用JDK 7来做到这一点,甚至可以使用JDK 8。您唯一需要的更改是使用而不是用于pom.xml中的配置,如下所示。1.71.8maven-compiler-plugin<plugin>&nbsp; &nbsp; <groupId>org.apache.maven.plugins</groupId>&nbsp; &nbsp; <artifactId>maven-compiler-plugin</artifactId>&nbsp; &nbsp; <version>3.5</version>&nbsp; &nbsp; <configuration>&nbsp; &nbsp; &nbsp; &nbsp; <source>1.7</source>&nbsp; <!-- 1.8 -->&nbsp; &nbsp; &nbsp; &nbsp; <target>1.7</target>&nbsp; <!-- 1.8 -->&nbsp; &nbsp; &nbsp; &nbsp; <optimize>true</optimize>&nbsp; &nbsp; &nbsp; &nbsp; <showDeprecation>true</showDeprecation>&nbsp; &nbsp; &nbsp; &nbsp; <showWarnings>true</showWarnings>&nbsp; &nbsp; </configuration></plugin>注意:如果使用 JDK 8 执行上述操作以使用参数进行编译,则必须确保没有任何使用 Java 8 功能的代码会导致编译器错误,例如 JDK 8。但是,我粗略地检查了它的源代码,似乎没有。有关 Javac 8 的更多详细信息,请参阅 https://docs.oracle.com/javase/8/docs/technotes/tools/windows/javac.html。javac-target 1.7 -source 1.7error: lambda expressions are not supported in -source 1.7-target-source
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java