当 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 构建文件中的库。

蒂莫