我正在使用此功能,因为增强器插件无法处理CLASSPATH
上的长Winodws
个,因此使用该插件不是有效选项。
我的module.xml
文件几乎是默认文件,但我只删除了对enhance
和compile
的{{1}}目标依赖项。我没有编译我的copy.metadata
课程,因为:
我删除了归档整个项目文件夹的部分,因为我只是在构建一个JAR。 - >
.java
我也有这个警告,无论我做什么都不会消失!
<echo message="==================================================================="/>
<echo message="Enhancing the MODULE files"/>
<echo message="==================================================================="/>
<!-- the classpath to enhance -->
<path id="module.enhancer.classpath">
<pathelement location="${module.classes.dir}"/>
<path refid="module.lib.classpath"/>
</path>
<!-- define the task enhancer -->
<taskdef name="nucleusenhancer"
classpathref="module.enhancer.classpath"
classname="org.datanucleus.enhancer.tools.EnhancerTask" />
<!-- enhance -->
<nucleusenhancer classpathref="module.enhancer.classpath"/>
</target>
<!--
===================================================================
TARGET : modulearchive
===================================================================
-->
<target name="modulearchive" depends="enhance">
<mkdir dir="${module.archive.dist.dir}"/>
<delete file="${module.archive.dist.dir}/${module.archive.dist.file}"/>
<zip zipfile="${module.archive.dist.dir}/${module.archive.dist.file}">
<zipfileset dir="${module.classes.dir}" prefix="" includes="**/*"/>
</zip>
</target>
我的module.properties文件没有太大变化。我评论了<taskdef name="nucleusenhancer"
classpathref="module.enhancer.classpath"
classname="org.datanucleus.enhancer.tools.EnhancerTask" />
>>>E:\Projects\Core - Module\${module.lib.dir} does not exist.
建筑的WAR
建筑物和未注释属性的属性:
JAR
我项目文件夹下的文件夹#######################################
# SAMPLE FOR JAR MODULE (commented out)
#######################################
module.dir=./
module.lib.dir=${module.dir}/lib/dn
module.lib2.dir=${module.dir}/lib/deps
module.classes.dir=${module.dir}/target/classes
module.src.java.dir=./src/main/java
module.build.debug=on
module.archive.dist.dir=dist
module.archive.dist.file=${name}.jar
module.archive.files=**/*
包含2个文件夹,用于RDBMS的datanucleus主jar,而另一个文件夹包含datanucleus依赖项。我编译的类位于lib
之下。
输出结果如下:
target
答案 0 :(得分:1)
增强功能是对已编译类的实际修改。如果你没有先编译类,那么就没有什么可以增强它了。