Eclipse:为什么它会吃掉我的log4j.properties文件



Windows 7 Professional

日食 3.7.2

我正在从另一个 IDE 迁移到 Eclipse。 我正在使用之前使用的相同 ANT 构建.xml文件编译我的项目。 我做

  1. 在项目视图中突出显示我的项目
  2. 展开树节点
  3. 在那里找到我的构建.xml文件
  4. 右键单击我的构建.xml文件
  5. 选择"以 Ant Build>运行身份"

效果很好,但每隔几个构建 Eclpise 就会吃掉我的 log4j.properties 文件,该文件位于:

C:\AllProjects\Workspace\acme\war\WEB-INF\classes\log4j.properties

Eclipse 基本上吃掉了 WEB-INF\classes 中不是 *.class 文件的所有文件。

正在做什么来实现这一目标,我该如何阻止它?

谢谢

由于您使用 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>

在项目资源管理器中选择后:

> Java 编译器>生成>输出文件夹

的属性

取消选中"清理项目时擦洗输出文件夹"

这对我来说是一个解决方案(虽然可能不是每个人),因为我使用时间测试 ANT 构建.xml为我进行编译、构建和清理。 我只是保留 Eclipse 的自动构建,以便在编译之前以 I 类型的形式收到那些漂亮的错误通知。

相关内容

  • 没有找到相关文章

最新更新