【问题标题】:Exclude some classes from being deployed on OC4j using ang使用 ang 将某些类排除在 OC4j 上部署
【发布时间】:2011-05-19 01:03:02
【问题描述】:

我正在使用 Eclipse,它使用 Ant 将 EJB 部署到本地 OC4J 容器。

我需要从部署中排除一些文件。

我打开了文件: D:\eclipse\plugins\org.eclipse.jst.server.generic.oc4j_1.5.206.v20090812\buildfiles\oracle.10.1.3.xml

发现:

<target name="package.module.ejb">
    <jar destfile="${server.publish.dir}/${module.name}.jar"> 
        <zipfileset dir="${module.dir}">
            <include name="**/*.*"/>
            <exclude name="**/*.java"/>
        </zipfileset>
    </jar>
</target>

我需要排除的文件具有以下模式:

XXXTest.class(以 Test.class 结尾)

我已经尝试添加:

<exclude name="**/*Test.class"/>

编辑

我在一个EAR中部署JAR,下面是部署的ear的目录结构:

MyApp.ear
  - META-INF
  - MyApp.jar

但是没有效果。

【问题讨论】:

    标签: java ant build deployment oc4j


    【解决方案1】:
    <exclude name="**/*Test.*"/>
    

    【讨论】:

    • 仍部署在 JAR 中!
    【解决方案2】:

    您想在开发/调试时部署不带某些类的应用程序吗?

    build.xml 是插件的一部分,因此更改它是不明智的。我想你可以接受这些类在开发过程中可以部署,除非这些类给你带来问题。

    如果您正在构建应用程序的发布版本,您有几个选择: - 为此使用 ant/maven。您可以更好地控制结果。 - 你还想纯粹用 Eclipse java builder 来做吗?然后你必须发布你的罐子。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-07-30
      • 1970-01-01
      • 1970-01-01
      • 2022-08-15
      • 1970-01-01
      • 2012-04-08
      • 1970-01-01
      • 2015-06-18
      相关资源
      最近更新 更多