一个Maven工程中,不同的模块需要不同的JDK进行编译

本人在构建数据库分区,分表的时候,由于jdbc3(jdk1.5中实现)和jdbc4(jdk1.6后实现)两个规范上存在相当大的差异,导致无论采用哪个jdk进行编译,都会导致整个pom树无法正确构建,总有一个要出问题。  说实际的这个问题卡了比较长的时候,最后还是研究maven编译插件,才真正解决。 
解决的办法就是,在主Pom中定义下面的编译插件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<build>
    [...]
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.1</version>
        <configuration>
          <verbose>true</verbose>
          <fork>true</fork>
          <executable>${JDK1.5JAVAC}</executable>
          <compilerVersion>1.5</compilerVersion>
        </configuration>
      </plugin>
    </plugins>
    [...]
  </build>

在dbclusterjdbc4中添加下面的编译插件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<build>
    [...]
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.1</version>
        <configuration>
          <verbose>true</verbose>
          <fork>true</fork>
          <executable>${JDK1.6JAVAC}</executable>
          <compilerVersion>1.6</compilerVersion>
        </configuration>
      </plugin>
    </plugins>
    [...]
  </build>

然后在settings.xml中定义JDK1.5JAVAC  和JDK1.6JAVAC变量,指向两个jdk的javac文件即可。

时间: 2024-10-12 23:58:04

一个Maven工程中,不同的模块需要不同的JDK进行编译的相关文章

Eclipse中一个Maven工程的目录结构

在之前的javaSE开发中,没有很关注Eclipse工程目录下的环境,总是看见一个src就点进去新建一个包再写一个class.以后的日子中也没有机会注意到一个工程到底是怎么组织的这种问题,跟不要说自己试试怎么控制了. 但是最近在学习Maven的时候知道了它对工程的目录结构有要求,也就是所谓的"惯例优于配置".有一个被绝大多数人认可的java工程的目录结构被确定下来.这样统一了市面上各种复杂配置的工程.于是我便重新开始查资料,看看别人到底如何安排一个优秀的工程框架的. 首先,一个默认的E

1.Maven+SpringMVC+Eclipse软件安装配置,Maven报插件错误,Eclipse总是卡死的解决办法,导入一个maven工程后 一直显示importing maven project

 使用Maven+SpringMVC+Eclipse软件安装配置过程中的问题: 1.Eclipse总是卡死的解决办法: 一:内存不足所以会卡死,配置一下eclipse.ini修改这几个值就好了-XX:MaxPermSize=768m-Xms1024m-Xmx3072m搜索 二:修改window->preferences --- > JAVA->Edittor->Hovers,将右侧所有复选框清空. 2.因为eclipse上一次未正常关闭,导致启动卡死,错误日志为: [plain

如何建立一个maven工程导入myeclipse

(2013-01-06 12:17:50) 转载▼ 标签: 杂谈 分类: maven 本人的myeclipse8.5直接创建标准的工程不成功,就在网上找资料查查后,搞定了总结了这份资料,方便以后更好的解决更多关于用myeclipse8.5来创建一个标准的maven工程. [1]第一步:下载一个免安装版的apache-maven-3.0.3.zip解压后,配置环境变量 新建M2_HOME: 在path后面添加  %M2_HOME%\bin; [2]第二步:编译检查环境是否配置正确;  mvn -v

##很多时候,我们新建一个Maven工程,第一步都是添加依赖,可是其中的scope代表了什么呢?

maven工程中scope详解: Maven的一个哲学是惯例优于配置(Convention Over Configuration), Maven默认的依赖配置项中,scope的默认值是compile,项目中经常傻傻的分不清,直接默认了. 一,scope的分类 ~1,compile 默认就是compile,什么都不配置也就是意味着compile.compile表示被依赖项目需要参与当前项目的编译,当然后续的测试,运行周期也参与其中,是一个比较强的依赖.打包的时候通常需要包含进去. ~2,test

本地jar包在maven工程中pom引用

背景 ??在使用Maven的过程中,经常碰到有些jar包在中央仓库没有的情况.如果公司有私服,那么就把jar包安装到私服上.如果没有私服,那就把jar包安装到本地Maven仓库.下面是如何把jar包导入本地maven仓库. 解决方法 1.确定包信息 groupId:设置项目代码的包名(一般用公司或组织名) artifactId:设置项目名或模块名 version:版本号 packaging:什么类型的文件(jar包) filePath:指定jar文件路径与文件名(同目录只需文件名) 2.在工程根

maven工程中警告[WARNING] Using platform encoding (GBK actually) to copy filtered resources, i.e. build is platform dependent!

[WARNING] Using platform encoding (GBK actually) to copy filtered resources, i.e. build is platform dependent! [警告]使用时平台编码格式(GBK actually)进行解析的文件资源,也就是说,构建是依赖于平台的! 错误原因:一些源文件的编码格式并不是工具平台的默认的解析格式,二者有冲突,所以报错 解决方法:在maven工程中的父工程POM中加入以下代码" <properties

maven工程中读取resource目录下配置文件

在maven工程中,我们会将配置文件放到src/main/resources下面,例如 我们需要确认resource 下的文件编译之后存放的位置. 它编译的路径直接位于classes下面,这个路径其实就是classPath的路径,所以,在resources 根目录下的配置文件其实就是 classPath的路径. // 1. 声明静态数据源成员变量private static DataSource ds; // 2. 创建连接池对象static { Properties pp = new Prop

新建一个maven工程

软件151  徐中飞 使用spring boot新建maven工程不在需要建立maven web工程,只要一般的maven工程就好了. 二.maven包的导入 清单如下: <!-- Inherit defaults from Spring Boot --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</

在maven工程中搭建SSM框架的错误总结

第一次搭建Maven工程走了很多弯路,现在总算把项目搭起来并且能正常运行了.故总结一下教训 1.在建立Maven工程前,先确定成功下载安装了Maven.  命令行用 mvn -v  检验 找到Maven的安装目录C:\Program Files\apache-maven-3.5.2\conf中的setting.xml文件,打开后配置本地仓库 <localRepository>C:/Users/lts/.m2/repository</localRepository>  (注意这里的&