【问题标题】:Generating Ant build.xml automatically自动生成 Ant build.xml
【发布时间】:2010-09-10 10:17:47
【问题描述】:

我有一个现有的 J2EE 项目,该项目很大而且很旧。因此,我目前的构建过程是打开eclipse、file/export、clic on War archive。

虽然我们公司的周转速度与需要新构建的速度一样快,但我们必须创建一个自动化流程。但是,我正在寻找自动化构建的最快方法。我首先看的是 Maven2,但我们的应用程序有一个 JDK1.4,低于最低 1.5。

我一直在寻找 Maven1,但在一些奇怪的错误和阅读之后,它似乎只是对 Ant 的一个覆盖。为什么我不直接使用 Ant?

在这里,我正在查看 Ant 文档并尝试编写 build.xml,但对于我的大项目来说似乎太费力了。看在上帝的份上,当我单击 Export/War 时,Eclipse 完成了这项工作。为什么我不能以最简单的方式重现或导出 Eclipse 导出 war 文件的方式,将其导出为 build.xml 或其他什么?

应该存在一些将Eclipse-metadata 转换为ant-build.xml 的工具。但是有人认识他们吗?

【问题讨论】:

  • 您确实应该考虑升级您的 Java 环境。 1.4 已经 8 年了,我什至不确定他们是否还在为它发布维护补丁。找到您仍然可以使用的当前软件会变得越来越难。

标签: java eclipse jakarta-ee ant war


【解决方案1】:

我认为创建 ant 脚本并不难。 无论如何,也许这个链接会有所帮助:Creating a deployable WAR file from Eclipse Project

这是一个示例 Ant 文件(从链接页面复制):

<?xml version="1.0" encoding="ISO-8859-1"?>
<project name="Deploy From Eclipse to Tomcat" basedir=".">
    <property name="warfile" value="sanfran"/>
    <target name="unpack">
       <unwar src="${warfile}.war" dest="${warfile}" />
    </target>
    <target name="create">
        <war destfile="${warfile}.war" webxml="WebContent/WEB-INF/web.xml" update="true">
            <classes dir="build\classes"/>
            <fileset dir="WebContent">
                <exclude name="WEB-INF/web.xml"/>
            </fileset>
        </war>
    </target>
    <target name="copy">
        <copy todir="c:\tomcat5517\webapps" overwrite="true">
            <fileset dir=".">
                <include name="*.war"/>
            </fileset>
        </copy>
    </target>
    <target name="deploy">
        <antcall target="create"/>
        <antcall target="copy"/>
    </target>
</project>

【讨论】:

  • 在我花费了大部分时间之后,我实际上已经从头开始编写了一个 ant 脚本。感谢您的回复!
  • 这个 ant 文件是否也创建类文件? (在 Eclipse 中这是自动完成的)。
【解决方案2】:

你试过http://www.testingreflections.com/node/view/1129吗。

另外一种可能是使用IntelliJ加载eclipse项目,使用intellij创建ant文件

【讨论】:

  • 嗯,这个解决方案很好,但只有在项目之前使用过 IntelliJ 时才有意义。我查看了这个 IDE,将我当前的 WebSphere 项目转换成它太复杂了......而且简单是我的主要论点:-)
猜你喜欢
  • 1970-01-01
  • 2011-05-10
  • 2012-02-05
  • 1970-01-01
  • 1970-01-01
  • 2012-07-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多