一个maven项目下的不一样模块使用不一样版本jdk编译

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

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文件便可。apache

相关文章
相关标签/搜索