java多模块maven_Maven和Java多版本模块

java多模块maven

介绍

通常,项目具有最低Java版本要求,并且适用于其所有模块。 但是每条规则都有其例外,最近我偶然发现了以下问题。

我的一个开源项目对其大多数模块都要求使用Java 1.6,除了一个要求1.7版本的项目。

当集成具有与您自己的项目不同的Java要求的外部库时,会发生这种情况。

因为该模块集成了DBCP2框架(至少支持Java 1.7),所以我需要指示Maven使用两个不同的Java编译器。

环境变量

我们需要定义以下环境变量

环境变量名称 环境变量值
JAVA_HOME_6 C:\ Program Files \ Java \ jdk1.6.0_38
JAVA_HOME_7 C:\ Program Files \ Java \ jdk1.7.0_25
JAVA_HOME %JAVA_HOME_6%

pom.xml定义了全局Java版本设置

<properties><jdk.version>6</jdk.version><jdk>${env.JAVA_HOME_6}</jdk>
</properties>

我们需要指示编译器和测试插件使用配置的Java版本。

<build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>${jdk.version}</source><target>${jdk.version}</target><showDeprecation>true</showDeprecation><showWarnings>true</showWarnings><executable>${jdk}/bin/javac</executable><fork>true</fork></configuration></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-surefire-plugin</artifactId><configuration><jvm>${jdk}/bin/java</jvm><forkMode>once</forkMode></configuration></plugin></plugins>
</build>

特定模块

这些模块需要不同的Java版本,只需要覆盖默认设置即可:

<properties><jdk.version>7</jdk.version><jdk>${env.JAVA_HOME_7}</jdk>
</properties>

就是这样,我们现在可以使用其特定的最低Java版本要求构建每个模块。

翻译自: https://www.javacodegeeks.com/2014/04/maven-and-java-multi-version-modules.html

java多模块maven

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/343340.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【渝粤教育】国家开放大学2018年秋季 3950T金融基础 参考试题

试卷代号&#xff1a;4988 电子政务概论 试题&#xff08;开卷&#xff09; 2019年1月 一、单项选择题&#xff08;每题所设选项中只有一个正确答案&#xff0c;每小题1分&#xff0c;共10分&#xff0c;多选、错选或不选均不得分&#xff09; 1&#xff0e;电子政务的公共服务…

8口网管型工业以太网交换机产品性能介绍

8端口以太网交换机因其端口数量、价格都比较适中&#xff0c;所以是比较常见的一款产品。杭州飞畅科技为满足不同客户的需要&#xff0c;就8端口的工业交换机分别研发了网管型、非网管、8电口、2光6电、4光4电等多种规格。如果您这边有特殊规格的需求&#xff0c;飞畅科技也可以…

php 读取页面全部变量,PHP-如何从外部文件获取“页面”变量?

我使用外部文件来处理WP插件中的AJAX调用.为了使其能够迭代WP方法,我进行了以下修改&#xff1a;require( ../../../wp-blog-header.php );header("HTTP/1.1 200 OK");问题是,似乎我无法从中获取任何特定于页面状态的变量.例如,get_query_var(‘page’)始终返回为空.…

【渝粤教育】国家开放大学2018年秋季 8177-21T (1)工程经济与管理 参考试题

科目编号&#xff1a;8182 a 2018&#xff0d;2019学年度第一学期期末考试 灌溉与管理 试题 2019年 1 月 一、概念解释 &#xff08;每题5分&#xff0c;共20分&#xff09; 1.蒸腾速率&#xff1a; 2.灌溉水源&#xff1a; 3.土壤水饱和度&#xff1a; 4.土壤水分的有效性…

5个重构原理示例

这篇文章介绍了重构真正的开源代码&#xff08; Gradle Modules Plugin &#xff09;时应用的五​​种&#xff08;最著名的&#xff09;重构原理。 语境 当我为Gradle Modules Plugin &#xff08;PR &#xff03;73 &#xff09; 单独编译 module-info.java &#xff0c;我注…

【渝粤教育】国家开放大学2019年春季 0134-22T劳动法学 参考试题

试卷编号&#xff1a;0134 期末考 劳动法学试题答案 1、劳动法的调整对象 2、竞业限制 3&#xff0e;职工培训 4&#xff0e;行政责任 二、单项选择题&#xff08;每题4分&#xff0c;共20分&#xff09; 考生注意&#xff1a;必须将正确答案填入表格中&#xff0c;否则该…

POE工业交换机的四种接法详解

PoE工业交换机具有电信级性能特征&#xff0c;可耐受严苛的工作环境。PoE交换机产品系列丰富&#xff0c;端口配置灵活&#xff0c;可满足各种工业领域的使用需求。那么&#xff0c;POE工业交换机该怎么接线呢&#xff1f;接下来就由飞畅科技的小编来为大家详细介绍下POE交换机…

【渝粤教育】国家开放大学2019年春季 0691-22T物理化学及实验 参考试题

科目编号&#xff1a;0691 座位号&#xff1a; 2018-2019学年度第二学期期末考试 物理化学及实验试题 2019年7月 一、填空题&#xff08;每空4分&#xff0c;共40分&#xff09; 1、熵与热力学概率之间的函数关系式是 。 2、补全热力学函数关系式&#xff1a;CP (S/T)P 3、一…

线程本地分配缓冲区

最近&#xff0c;我一直在研究遭受严重性能问题的Java应用程序。 在许多问题中&#xff0c;真正引起我注意的一个问题是新对象的分配速率相对较低&#xff08;应用程序分配了大量的相当大的对象&#xff09;。 后来发现&#xff0c;原因是在TLAB之外发生了大量分配。 什么是TL…

java发邮件无主题,使用SpringCloud过程中遇到的一些问题

对SpringCloud做一次简单的问题总结。application.yml 和 bootstrap.yml 有何区别&#xff1f;I have just asked the Spring Cloud guys and thought I should share the info I have here.bootstrap.yml is loaded before application.yml.It is typically used for the foll…

【渝粤教育】国家开放大学2019年春季 1018国际公法 参考试题

试卷代号&#xff1a;1018 2019年春季学期期末统一考试 国际公法试题 2019年7月 一、单项选择题&#xff08;每题1分&#xff0c;共10分。每题只有一项答案正确&#xff0c;请将正确答案的序号填在括号内&#xff09; 1.下列哪位法学家最早将西方国际法著作翻译成中文&#xff…

一号信令是什么?1号信令和7号信令的区别介绍!

1号信令又称为多频互控信令或随路信令。那么&#xff0c;什么是一号信令&#xff1f;一号信令是怎么分类的&#xff1f;1号信令常见问题有哪些&#xff1f;1号信令和7号信令之间有哪些区别呢&#xff1f;接下来我们就跟随飞畅科技的小编一起来详细了解下吧&#xff01; 一、1号…

【渝粤教育】国家开放大学2019年春季 1124流行病学 参考试题

试卷代号&#xff1a;1124 2019年春季学期期末统一考试 流行病学试题&#xff08;开卷&#xff09; 2019年7月 一、单项选择题&#xff08;每题2分&#xff0c;共20分&#xff09; 1&#xff0e;下列哪一个不是流行病学的特征() A.群体特征B&#xff0e;以分布为起点的特征 C&a…

matlab lstm工具箱,深度学习工具箱使用笔记---lstm网络(1)

matlab 深度学习工具箱使用笔记—lstm网络在2017的版本之后&#xff0c;matlab上线了自己的lstm网络工具箱&#xff0c;至此&#xff0c;搭建简单的网络时&#xff0c;就可以只用工具包所提供的函数&#xff0c;并且matlab提供了GUI和训练过程界面&#xff0c;可以方便的使用&a…

RS232、RS485和CAN协议总结与对比

RS232简单实用&#xff0c;缺陷是不支持多设备间的互连&#xff0c;缺少拓扑结构。由此诞生了RS485。RS485最重要的是采用两条差分线代替RS232的单线传输&#xff0c;支持拓扑结构。RS485属于电气层的协议&#xff0c;物理上的实现大都在RS232基础上完成。缺陷是主从轮询的方式…

【渝粤教育】国家开放大学2019年春季 1260软件工程 参考试题

试卷代号&#xff1a;1260 软件工程 试题&#xff08;半开卷&#xff09; 2019年7月 一、选择题&#xff0c;请从四个可选项中选择正确答案。&#xff08;60分&#xff0c;每题3分&#xff09; 1.以下哪一项不是软件危机的表现形式&#xff08; &#xff09;。 A.成本高 B.生产…

【渝粤教育】国家开放大学2019年春季 1362应用语言学 参考试题

试卷代号&#xff1a;1362 应用语言学 试题 2019年7月 注意事项 一、将你的学号、姓名及分校&#xff08;工作站&#xff09;名称填写在答题纸的规定栏 内。考试结束后&#xff0c;把试卷和答题纸放在桌上。试卷和答题纸均不得带 出考场。 二、仔细阅读题目的说明&#xff0c;并…

maven的中央存储库_部署到Maven中央存储库

maven的中央存储库您需要使您的Java库可公开访问吗&#xff1f; 您的项目托管在GitHub上吗&#xff1f; 您是否喜欢“将所有功能都部署到Maven Central Repository”按钮的想法&#xff1f; 我将展示如何使用maven-release-plugin进行设置 。 源代码托管在GitHub上&#xff0c;…

php 回到顶部,jquery如何实现点击网页回到顶部效果?(图文+视频)

本篇文章主要给大家介绍如何用jquery代码实现网页回到顶部的效果。我们在浏览各大网站页面时&#xff0c;想必大家肯定都遇到过&#xff0c;当阅览一个长页面时&#xff0c;拉到下面部分会出现类似回到顶部的按钮特效吧。这种点击回到顶部的功能特效&#xff0c;可以很大程度上…

【渝粤教育】国家开放大学2019年春季 2114人体解剖生理学 参考试题

试卷代号&#xff1a;2114 人体解剖生理学 试题 2019年7月 一、单项选择题&#xff08;每题2分&#xff0c;共80分&#xff09; 1.上皮组织的特点不包括&#xff08; &#xff09;。 A.包括被覆上皮和腺上皮 B.分布于体表及有腔器官的腔面 C.含丰富血管、神经 D.具有保护作用 E…