我正在开发一个Java桌面应用程序,并希望有一个外部配置文件。
我正在开发使用Netbeans的应用程序,并试图在dist目录中添加configuration.xml文件,以便它驻留在应用程序工作文件夹中。但是,当Netbeans执行清理操作时,它将删除dist目录,
我应该在哪里放置这个configuration.xml文件,以便它不会被删除并存在于应用程序启动目录中。Netbeans和外部配置文件
9
A
回答
13
您可以添加到您的build.xml:
<target name="-post-jar">
<copy todir="${dist.jar.dir}">
<fileset dir="resources" includes="**"/>
</copy>
</target>
现在,您可以把该文件夹“资源”(你需要创建)在你的项目中的configuration.xml配置文件,并在所有文件它将在构建过程中被复制到dist文件夹中。
1
我能够得到这个工作,但我不能得到-post-jar触发器,没有明确地将它作为主构建配置中的依赖项输入。这是Netbeans 7.0.1中的一个富客户端项目。
相反,在build.xml中的,我希望能有外部资源文件(主要是.txt文件,用户可能会在以后编辑)Netbeans的模块,我进入了以下内容:
<target name="netbeans-extra">
<echo>Copying resources files to build cluster directory...</echo>
<mkdir dir="${cluster}/resources"/>
<copy todir="${cluster}/resources">
<fileset dir="resources" includes="**"/>
</copy>
</target>
然后我在模块的顶层目录(与src,release,build一起)中创建一个名为'resources'的新目录,并将我的.txt文件放在那里。
当您在此模块上进行构建时,netbeans-extra将作为依赖项调用,并在主项目build/cluster目录中执行“resources”文件夹的创建,然后复制项目的内容资源目录。
最终,当你为你的项目建立一个发行版时,你会发现资源目录放置在你的项目模块目录的旁边,使得并排排列更加和谐。
1
正确的代码...
<target name="-pre-jar">
<echo>Copying resources files to build directory...</echo>
<mkdir dir="${dist.jar.dir}/resources"/>
<copy todir="${dist.jar.dir}/resources">
<fileset dir="resources" includes="**"/>
</copy>
</target>
主build.xml文件(不是nbproject文件\ build-impl.xml中)加入此。您也可以将“-pre-jar”替换为“-post-jar”