本人在构建数据库分区,分表的时候,由于jdbc3(jdk1.5中实现)和jdbc4(jdk1.6后实现)两个规范上存在相当大的差异,导致无论采用哪个jdk进行编译,都会导致整个pom树无法正确构建,总有一个要出问题。
说实际的这个问题卡了比较长的时候,最后还是研究maven编译插件,才真正解决。
解决的办法就是,在主pom中定义下面的编译插件:
<a href="http://my.oschina.net/tinyframework/blog/200408#">?</a>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<code><</code><code>build</code><code>></code>
<code> </code><code>[...]</code>
<code> </code><code><</code><code>plugins</code><code>></code>
<code> </code><code><</code><code>plugin</code><code>></code>
<code> </code><code><</code><code>groupid</code><code>>org.apache.maven.plugins</</code><code>groupid</code><code>></code>
<code> </code><code><</code><code>artifactid</code><code>>maven-compiler-plugin</</code><code>artifactid</code><code>></code>
<code> </code><code><</code><code>version</code><code>>3.1</</code><code>version</code><code>></code>
<code> </code><code><</code><code>configuration</code><code>></code>
<code> </code><code><</code><code>verbose</code><code>>true</</code><code>verbose</code><code>></code>
<code> </code><code><</code><code>fork</code><code>>true</</code><code>fork</code><code>></code>
<code> </code><code><</code><code>executable</code><code>>${jdk1.5javac}</</code><code>executable</code><code>></code>
<code> </code><code><</code><code>compilerversion</code><code>>1.5</</code><code>compilerversion</code><code>></code>
<code> </code><code></</code><code>configuration</code><code>></code>
<code> </code><code></</code><code>plugin</code><code>></code>
<code> </code><code></</code><code>plugins</code><code>></code>
<code> </code><code></</code><code>build</code><code>></code>
在dbclusterjdbc4中添加下面的编译插件:
<code> </code><code><</code><code>executable</code><code>>${jdk1.6javac}</</code><code>executable</code><code>></code>
<code> </code><code><</code><code>compilerversion</code><code>>1.6</</code><code>compilerversion</code><code>></code>
然后在settings.xml中定义jdk1.5javac 和jdk1.6javac变量,指向两个jdk的javac文件即可。