如何使Netbeans 6.5使用我的文件nb-build.xml而不是build.xml?

如何使Netbeans 6.5使用我的文件nb-build.xml而不是build.xml?,netbeans,ant,build,Netbeans,Ant,Build,当我在Netbeans中创建一个新项目时,它会生成一个build.xml文件,用于编译和运行该项目,以及文件夹nbproject中的其他内容 现在,我想拥有我自己的build.xml文件,我将使用它编译到服务器端的项目中。我已经尝试在Netbeans和纯Ant中使用生成的构建文件,但这比它的价值更麻烦 我想将自动生成的文件重命名为nb build.xml,并拥有自己的build.xml文件,Netbeans不会触及该文件 如何实现这一点?尝试删除NetBeans生成的build-impl.xml

当我在Netbeans中创建一个新项目时,它会生成一个build.xml文件,用于编译和运行该项目,以及文件夹nbproject中的其他内容

现在,我想拥有我自己的build.xml文件,我将使用它编译到服务器端的项目中。我已经尝试在Netbeans和纯Ant中使用生成的构建文件,但这比它的价值更麻烦

我想将自动生成的文件重命名为
nb build.xml
,并拥有自己的build.xml文件,Netbeans不会触及该文件


如何实现这一点?

尝试删除NetBeans生成的build-impl.xml(即
)的build.xml中的import语句,并将其替换为nb-build.xml的导入(例如

在创建项目时,您可以选择带有现有源的Java项目或带有现有源的Web项目选项。我相信,这将尊重任何现有的build.xml文件,并创建一个辅助构建文件


在创建项目时,还可以选择使用现有的构建脚本,但是我相信,该选项不会为您生成Netbeans构建脚本,相反,它将完全依赖所有构建的现有构建脚本。

我们通过这种方式解决了这个问题。假设您自己的Ant构建脚本名为“myBuild.xml”,并与build.xml放在同一文件夹中-打开build.xml文件并将其内容替换为:

<?xml version="1.0" encoding="UTF-8"?>
<project name="payroll_web_ice_jq" default="default" basedir=".">    
    <condition property="import.path" value="myBuild.xml">
        <not><isset property="netbeans.user"/></not>
    </condition>
    <condition property="import.path" value="nbproject/build-impl.xml">
        <isset property="netbeans.user"/>
    </condition>

    <!-- conditional import. If triggered from NetBeans, use old build script
                if triggered from shell, user new build script -->
    <import file="${import.path}" />

</project>

如您所见,我们检查是否存在“netbeans.user”属性,该属性只应存在于netbeans中,而不应存在于命令行中。这对我们很有用。

就像一个符咒:

进入项目目录中的
nbproject
目录,编辑文件
project.properties
。查找如下所示的部分:

# Only compile against the classpath explicitly listed here:
build.sysclasspath=ignore
build.test.classes.dir=${build.dir}/test/classes
build.test.results.dir=${build.dir}/test/results
并添加以下行:

buildfile=nb-build.xml
下次在NetBeans中打开项目时,它将创建一个同名的新文件,并开始忽略现有的build.xml文件