Java 如何使Eclipse编译器将现有类文件复制到目标目录?
如何使Eclipse将所有文件(除了.java)从源目录复制到输出目录?我在我的源代码下有一些类文件,但它们被过滤掉了。“首选项->Java->编译器->构建->筛选资源”设置对我不起作用 谢谢 编辑: 我提出了一个解决方案:向Eclipse项目添加额外的构建器。这是一个Ant脚本:Java 如何使Eclipse编译器将现有类文件复制到目标目录?,java,eclipse,Java,Eclipse,如何使Eclipse将所有文件(除了.java)从源目录复制到输出目录?我在我的源代码下有一些类文件,但它们被过滤掉了。“首选项->Java->编译器->构建->筛选资源”设置对我不起作用 谢谢 编辑: 我提出了一个解决方案:向Eclipse项目添加额外的构建器。这是一个Ant脚本: <project name="example" default="copy_resources" basedir="."> <target name="copy_resources" de
<project name="example" default="copy_resources" basedir=".">
<target name="copy_resources" depends="" >
<copy todir="bin" overwrite="false">
<fileset dir="src">
<exclude name="**/*.java" />
</fileset>
</copy>
</target>
</project>
但是,我必须手动触发“buildproject”命令才能执行Ant脚本。当我执行“清理”时,它不会被执行…您需要将类目录放在与源代码不同的目录中,我通常将它们放在名为“lib”的目录中(不仅是类目录,还包括jar) 一旦类位于不同的目录中: 右键单击项目>属性>Java构建路径>库 选项卡>添加类文件夹按钮>选择目录>确定>确定
当您构建项目时,应该包括类目录。听起来像是
。类文件是其他文件的工件,或者是签入的,或者是由外部进程创建的。在这两种情况下,Eclipse似乎都没有意识到它们(根据您的描述)
您可以尝试以下操作:将新生成器添加到项目中。选择“Ant”并选择工作区根目录下的build.xml
(或者您决定的任何位置-您需要创建此文件)。无论何时重建项目,ant脚本都将运行
<?xml version="1.0" encoding="UTF-8"?>
<project default="copy">
<target name="copy">
<mkdir dir="someplace"/>
<copy todir="someplace">
<fileset dir="source">
<include name="**/*.class"/>
</fileset>
</copy>
</target>
</project>
您只需要修复文件的源和目标。为什么在源目录中有.class文件?这看起来很难看…请检查这个问题的背景:它是不同的。我源代码中的“.class”文件是我在该位置需要的资源。请检查我的另一个背景问题:为什么必须将它们放在源代码目录中?如果您使用完全相同的包结构,那么将类文件放置在何处(如果您将它们添加到构建路径,也就是说)没有区别。我在运行时使用放置在同一包中的类的getClass().getResource()访问资源。这种方法不需要绝对路径,并且可以从IDE和JAR中工作。我可以问一下为什么要这样做吗?你正确地理解了这个问题。我在您之前一分钟发布了相同的解决方案:-)不幸的是,即使启用了“自动生成”,我也必须手动触发“生成项目”操作。