为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

HUX布斯 2022-09-07 17:46:44
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 版本进行测试。
查看完整描述

1 回答

?
胡说叔叔

TA贡献1804条经验 获得超8个赞

我检查了 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>

    <groupId>org.apache.maven.plugins</groupId>

    <artifactId>maven-compiler-plugin</artifactId>

    <version>3.5</version>

    <configuration>

        <source>1.7</source>  <!-- 1.8 -->

        <target>1.7</target>  <!-- 1.8 -->

        <optimize>true</optimize>

        <showDeprecation>true</showDeprecation>

        <showWarnings>true</showWarnings>

    </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


查看完整回答
反对 回复 2022-09-07
  • 1 回答
  • 0 关注
  • 72 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信