Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 带有多个JDK的GradleMaven发布插件_Java_Maven_Gradle_Build.gradle_Gradle Plugin - Fatal编程技术网

Java 带有多个JDK的GradleMaven发布插件

Java 带有多个JDK的GradleMaven发布插件,java,maven,gradle,build.gradle,gradle-plugin,Java,Maven,Gradle,Build.gradle,Gradle Plugin,我有一个Java库项目,我想使用Maven发布插件发布它。我面临的挑战是,我希望将其发布到同一个本地nexus存储库,但使用多个JDK版本进行编译。就像我想用JDK1.8和JDK11编译相同的源代码一样。我这样做的原因是,我的项目有多个消费者,我想确保我能够提供正确的工件 我是从看到微软的MSSQL服务器驱动程序中得到这个想法的。它们有专门为各个JDK发布的相同版本的驱动程序 提前谢谢 您描述的用例正是我们发明的用例 是一个专为MRJAR用例开发的插件 事实上,mrJar插件使用自身创建发布到插

我有一个Java库项目,我想使用Maven发布插件发布它。我面临的挑战是,我希望将其发布到同一个本地nexus存储库,但使用多个JDK版本进行编译。就像我想用JDK1.8和JDK11编译相同的源代码一样。我这样做的原因是,我的项目有多个消费者,我想确保我能够提供正确的工件

我是从看到微软的MSSQL服务器驱动程序中得到这个想法的。它们有专门为各个JDK发布的相同版本的驱动程序


提前谢谢

您描述的用例正是我们发明的用例

是一个专为MRJAR用例开发的插件

事实上,mrJar插件使用自身创建发布到插件门户的JAR。它会在构建过程中自行创建一个从插件库分发的工件

例如:只有Gradle 6.0或更高版本支持Java13。Gradle插件门户上发布的mrJar插件的JAR文件具有仅在Java 13中运行的项目中应用时才提供Java 13支持的智能。当插件在Java8、9、10、11、12中运行时,Java13特性就不存在了


我非常确定使用mrJar插件是您的问题所描述的用例的解决方案。将逐步完成您需要执行的操作。

您是否始终希望为Java 8(JDK 1.和JDK 11)编译?是的。我希望它能在自己的JDKSorry中编译和发布,我不明白。那么,您是想在使用JDK 11时为Java 8编译,还是想在使用JDK 11时为Java 11编译?是的。在发布jre8工件时,我想在JDK8中编译。在发布JRE11工件时,我想使用JDK11进行编译。通过这种方式,编译的工件与正确的JRE匹配。什么是JRE 11工件?应该在JRE 11上运行的工件?为Java11编译的工件?或者是用JDK11编译的工件?你能举一些我可以研究的例子吗?关于您提供的链接,没有足够的文档供我进行实验。我在答案的使用说明中添加了一个链接。我最近没有更新那个页面。但是对于您的用例,当前版本的步骤仍然与旧版本的步骤完全相同。使用说明中指出,“由于Gradle 5.6.1中的突破性更改,mrJar的当前版本已确认仅适用于Gradle 5.0.0到5.5.1版本”。感谢您让我知道@StefanBollmann。该使用情况页面没有及时更新。道歉。请试一试?使用Gradle 6.0-rc-2更新并测试了版本0.0.16。如果你对那个有什么问题,请?。我将为您A.S.A.P.进行调查。一个最小的可重复性示例—包括重现问题、JDK、操作系统等的步骤—将帮助我很快为您找到解决方案。蒂亚是个恶魔。你好吗?我在上次发言后更新了插件。如果你的实验有任何错误,请试一试?使用Gradle 6.0-rc-2更新并测试了版本0.0.16。如果您对该版本有任何问题,请?我将为您进行调查A.S.A.P.一个最小的复制器-包括复制问题的步骤,一个Gradle包装器,您使用的JDK,操作系统,等等-将意味着更快的解决方案。蒂亚。