当 jdeveloper 中的 运行 ant 时,包 oracle.jbo.server 不存在
package oracle.jbo.server does not exist when running ant in jdeveloper
我有一个项目要维护,这个项目是在一台旧电脑上开发的(遗憾的是它已经不能用了),现在我的老板告诉我用正在使用的蚂蚁 xml 生成一只耳朵在旧机器上。
当我 运行 蚂蚁时,我看到这些错误:
Buildfile: D:\JDeveloper\COBLIN-WEB\Branches\QA\Framework-CRE\Common-ViewController\framework-ant.xml
init-framework:
compile-framework-model:
[javac] Compiling 23 source files to D:\JDeveloper\COBLIN-WEB\branches\QA\Framework-CRE\Common-Model\classes
[javac] D:\JDeveloper\COBLIN-WEB\branches\QA\Framework-CRE\Common-Model\src\bo\com\cre\framework\model\adf\entity\BaseEntityCache.java:2: package oracle.jbo.server does not exist
[javac] import oracle.jbo.server.EntityCache;
[javac] ^
[javac] D:\JDeveloper\COBLIN-WEB\branches\QA\Framework-CRE\Common-Model\src\bo\com\cre\framework\model\adf\entity\BaseEntityCache.java:4: cannot find symbol
[javac] symbol: class EntityCache
[javac] public class BaseEntityCache extends EntityCache{
[javac] ^
[javac] D:\JDeveloper\COBLIN-WEB\branches\QA\Framework-CRE\Common-Model\src\bo\com\cre\framework\model\adf\entity\BaseEntityDefImpl.java:2: package oracle.jbo.server does not exist
[javac] import oracle.jbo.server.EntityDefImpl;
[javac] ^
[javac] D:\JDeveloper\COBLIN-WEB\branches\QA\Framework-CRE\Common-Model\src\bo\com\cre\framework\model\adf\entity\BaseEntityDefImpl.java:4: cannot find symbol
[javac] symbol: class EntityDefImpl
[javac] public class BaseEntityDefImpl extends EntityDefImpl{
[javac]
....
第一个错误中提到的class是:
package bo.com.cre.framework.model.adf.entity;
import oracle.jbo.server.EntityCache;
public class BaseEntityCache extends EntityCache{
public BaseEntityCache() {
super();
}
}
XML运行和蚂蚁:
<?xml version="1.0" encoding="windows-1252" ?>
<project xmlns="antlib:org.apache.tools.ant" name="Framework" default="all" basedir=".">
<property file="framework-ant.properties"/>
<property file="${coblin.home}/${deploy.config.dir}/libs-ant.properties"/>
<import file="${coblin.home}/${deploy.config.dir}/libs-ant.xml"/>
<path id="classpath-framework">
<pathelement location="${coblin.home}/${framework.model.dir}/classes"/>
<path refid="classpath"/>
</path>
<!-- info para compilar framwork -->
<target name="all-framework" description="Build the project" depends="clean-framework,compile-framework-model,compile-framework-view,jar-framework"/>
<target name="jar-framework" description="generate common-model.jar, common-view-controller.jar">
<jar destfile="${coblin.home}/${coblin.lib.dir}/common-model.jar" basedir="${coblin.home}/${framework.model.dir}/classes">
<manifest>
<attribute name="Manifest-Version" value="1.0"/>
</manifest>
</jar>
<jar destfile="${coblin.home}/${coblin.lib.dir}/common-view-controller.jar" basedir="${coblin.home}/${framework.view.dir}/classes">
<manifest>
<attribute name="Manifest-Version" value="1.0"/>
</manifest>
</jar>
</target>
<target name="init-framework">
<tstamp/>
<mkdir dir="${coblin.home}/${framework.model.dir}/classes"/>
<mkdir dir="${coblin.home}/${framework.view.dir}/classes"/>
</target>
<target name="clean-framework" description="Clean the project Framework">
<delete includeemptydirs="true" quiet="true">
<fileset dir="${coblin.home}/${framework.model.dir}/classes" includes="**/*"/>
<fileset dir="${coblin.home}/${framework.view.dir}/classes" includes="**/*"/>
</delete>
</target>
<target name="compile-framework-model" description="Compile Java source files of Framework" depends="init-framework">
<javac destdir="${coblin.home}/${framework.model.dir}/classes" classpathref="classpath-framework" debug="${javac.debug}" nowarn="${javac.nowarn}"
deprecation="${javac.deprecation}" encoding="Cp1252" source="1.6" target="1.6">
<src path="${coblin.home}/${framework.model.dir}/src"/>
</javac>
<copy todir="${coblin.home}/${framework.model.dir}/classes">
<fileset dir="${coblin.home}/${framework.model.dir}/src">
<patternset refid="copy.patterns"/>
</fileset>
</copy>
</target>
如果我编译并 运行 来自 Jdeveloper 的项目 运行 没问题,但我需要生成 ear
我应该怎么办?
您需要将编译所需的库添加到ANT环境中。我猜它们在其中一个导入的文件中,但是曾经包含的文件已经过时了。
您是否更改了 JDev 版本?
无论如何,您可以从项目创建一个新的 ANT 构建文件。这将生成项目中使用的库的包含。然后您在 ANT 文件中查找库并将它们交换到新生成的 ANT 构建文件中的库。
蒂莫
我有一个项目要维护,这个项目是在一台旧电脑上开发的(遗憾的是它已经不能用了),现在我的老板告诉我用正在使用的蚂蚁 xml 生成一只耳朵在旧机器上。
当我 运行 蚂蚁时,我看到这些错误:
Buildfile: D:\JDeveloper\COBLIN-WEB\Branches\QA\Framework-CRE\Common-ViewController\framework-ant.xml
init-framework:
compile-framework-model:
[javac] Compiling 23 source files to D:\JDeveloper\COBLIN-WEB\branches\QA\Framework-CRE\Common-Model\classes
[javac] D:\JDeveloper\COBLIN-WEB\branches\QA\Framework-CRE\Common-Model\src\bo\com\cre\framework\model\adf\entity\BaseEntityCache.java:2: package oracle.jbo.server does not exist
[javac] import oracle.jbo.server.EntityCache;
[javac] ^
[javac] D:\JDeveloper\COBLIN-WEB\branches\QA\Framework-CRE\Common-Model\src\bo\com\cre\framework\model\adf\entity\BaseEntityCache.java:4: cannot find symbol
[javac] symbol: class EntityCache
[javac] public class BaseEntityCache extends EntityCache{
[javac] ^
[javac] D:\JDeveloper\COBLIN-WEB\branches\QA\Framework-CRE\Common-Model\src\bo\com\cre\framework\model\adf\entity\BaseEntityDefImpl.java:2: package oracle.jbo.server does not exist
[javac] import oracle.jbo.server.EntityDefImpl;
[javac] ^
[javac] D:\JDeveloper\COBLIN-WEB\branches\QA\Framework-CRE\Common-Model\src\bo\com\cre\framework\model\adf\entity\BaseEntityDefImpl.java:4: cannot find symbol
[javac] symbol: class EntityDefImpl
[javac] public class BaseEntityDefImpl extends EntityDefImpl{
[javac]
....
第一个错误中提到的class是:
package bo.com.cre.framework.model.adf.entity;
import oracle.jbo.server.EntityCache;
public class BaseEntityCache extends EntityCache{
public BaseEntityCache() {
super();
}
}
XML运行和蚂蚁:
<?xml version="1.0" encoding="windows-1252" ?>
<project xmlns="antlib:org.apache.tools.ant" name="Framework" default="all" basedir=".">
<property file="framework-ant.properties"/>
<property file="${coblin.home}/${deploy.config.dir}/libs-ant.properties"/>
<import file="${coblin.home}/${deploy.config.dir}/libs-ant.xml"/>
<path id="classpath-framework">
<pathelement location="${coblin.home}/${framework.model.dir}/classes"/>
<path refid="classpath"/>
</path>
<!-- info para compilar framwork -->
<target name="all-framework" description="Build the project" depends="clean-framework,compile-framework-model,compile-framework-view,jar-framework"/>
<target name="jar-framework" description="generate common-model.jar, common-view-controller.jar">
<jar destfile="${coblin.home}/${coblin.lib.dir}/common-model.jar" basedir="${coblin.home}/${framework.model.dir}/classes">
<manifest>
<attribute name="Manifest-Version" value="1.0"/>
</manifest>
</jar>
<jar destfile="${coblin.home}/${coblin.lib.dir}/common-view-controller.jar" basedir="${coblin.home}/${framework.view.dir}/classes">
<manifest>
<attribute name="Manifest-Version" value="1.0"/>
</manifest>
</jar>
</target>
<target name="init-framework">
<tstamp/>
<mkdir dir="${coblin.home}/${framework.model.dir}/classes"/>
<mkdir dir="${coblin.home}/${framework.view.dir}/classes"/>
</target>
<target name="clean-framework" description="Clean the project Framework">
<delete includeemptydirs="true" quiet="true">
<fileset dir="${coblin.home}/${framework.model.dir}/classes" includes="**/*"/>
<fileset dir="${coblin.home}/${framework.view.dir}/classes" includes="**/*"/>
</delete>
</target>
<target name="compile-framework-model" description="Compile Java source files of Framework" depends="init-framework">
<javac destdir="${coblin.home}/${framework.model.dir}/classes" classpathref="classpath-framework" debug="${javac.debug}" nowarn="${javac.nowarn}"
deprecation="${javac.deprecation}" encoding="Cp1252" source="1.6" target="1.6">
<src path="${coblin.home}/${framework.model.dir}/src"/>
</javac>
<copy todir="${coblin.home}/${framework.model.dir}/classes">
<fileset dir="${coblin.home}/${framework.model.dir}/src">
<patternset refid="copy.patterns"/>
</fileset>
</copy>
</target>
如果我编译并 运行 来自 Jdeveloper 的项目 运行 没问题,但我需要生成 ear
我应该怎么办?
您需要将编译所需的库添加到ANT环境中。我猜它们在其中一个导入的文件中,但是曾经包含的文件已经过时了。 您是否更改了 JDev 版本?
无论如何,您可以从项目创建一个新的 ANT 构建文件。这将生成项目中使用的库的包含。然后您在 ANT 文件中查找库并将它们交换到新生成的 ANT 构建文件中的库。
蒂莫