我在从JDeveloper Studio释放组件构建时遇到了一些麻烦…
我在JDeveloper中设置了对aia.jar的引用,我似乎无法在Ant命令行上正确指定。
下面是我的命令行:ant -f c:...jdeveloperbinant-sca-package.xml
-D"compositeDir=c:/.../ProcessImpl"
-D"compositeName=ProcessImpl"
-D"revision=1.0"
-D"scac.application.home=c:/.../.adf"
一开始一切似乎都很顺利,直到它失败了:package oracle.apps.aia.core.eh.logging does not exist
为了将来遇到同样问题的人,这里是解决方案…
我的aia.jar
住在jdeveloper/lib
…
我尝试了CLASS_PATH
环境变量,ant
命令行上的-lib <path>
选项,甚至在ant-sca-compile.xml
中添加classpath
属性-这些都没有任何区别。
aia.jar
文件显然已经存在于正在构建的项目的SCA-INF/lib
子目录中。最后,我创建了一个包装器build.xml
文件,该文件将所需的依赖项复制到此位置,然后调用ant-sca-package.xml
…
<target name="build">
<echo>Copy AIA.jar</echo>
<mkdir dir="${sca-inf.dir}/lib" />
<copy file="${aia.file}" todir="${sca-inf.dir}/lib"/>
<echo>Create Package</echo>
<ant antfile="${script.home}/ant-sca-package.xml" inheritAll="false" target="package">
<property name="compositeDir" value="${path}/${name}"/>
<property name="compositeName" value="${name}"/>
<property name="revision" value="${rev}"/>
<property name="sca.application.home" value="${adf.dir}"/>
<property name="scac.application.home" value="${adf.dir}"/>
</ant>
</target>