Windows 7专业版
Eclipse 3.7.2
我正从另一个IDE迁移到Eclipse。我正在使用之前使用的相同ANT build.xml文件编译我的项目。
我这样做效果很好,但每次构建Eclpise都会吃掉位于以下位置的log4j.properties文件:
C:\ AllProjects \工作区\ ACME \战争\ WEB-INF \类\ log4j.properties
Eclipse基本上会占用WEB-INF \ classes中不是* .class文件的所有文件。
我在做什么才能实现这一目标?如何阻止它呢?
由于
答案 0 :(得分:1)
由于您使用ant而不是Eclipse来构建,因此您可以尝试关闭设置以自动构建项目。
选择您的项目,然后在屏幕顶部的菜单栏中选择Project
并取消选中Build Automatically
选项。
编辑:第二意见
每次进行构建时,我都会添加一个ant任务来将log4j属性文件复制到WEB-INF/classes
文件夹中。这样做的一个很好的优点是,您可以为不同的构建类型(调试,发布,等。)拥有不同的属性文件,而不必担心手动对其进行更改。此外,如果您正在使用版本控制,这应该可以更容易管理。
将您的log4j.properties
文件复制到源目录,并将这样的内容添加到您的ant构建文件中:
<target name="copy-log4j-property-file">
<copy file="src/log4j.properties" todir="WEB-INF/classes" />
</target>
<target name="build" depends="copy-log4j-property-file">
<!-- the rest of your build things here -->
</target>
答案 1 :(得分:1)
在Project explorer中选择后:
属性&gt; Java编译器&gt;建筑&gt;输出文件夹
取消选中“清洁项目时清理输出文件夹”
这对我来说是一个解决方案(虽然可能不是每个人),因为我使用时间测试ANT build.xml来为我编译,构建和清理。我只是保留了Eclipse的自动构建,所以在编译之前,我将这些好的错误通知作为I类型。