我有一个关于在Eclipse中使用Java Ant项目的问题。最初我是从命令行创建一个Ant Java项目,以了解它是如何工作的。现在我想在Eclipse中使用它,我不知道如何继续。在Eclipse中集成Java项目与Ant
因此,最初的文件结构如下:
project2/
src/java/com/pe60t0/project2/component1/HelloPe60t0.java
lib/
...
我有以下构建文件:
<?xml version="1.0"?>
<project name="HelloPe60t0" basedir="." default="main">
<property name="src.dir" value="src"/>
<property name="build.dir" value="build"/>
<property name="lib.dir" value="lib"/>
<property name="classes.dir" value="${build.dir}/classes"/>
<property name="jar.dir" value="${build.dir}/jar"/>
<property name="main-class" value="com.pe60t0.project2.component1.HelloPe60t0"/>
<path id="classpath">
<fileset dir="${lib.dir}" includes="**/*.jar"/>
</path>
<path id="application" location="${jar.dir}/${ant.project.name}.jar"/>
<target name="clean">
<delete dir="${build.dir}"/>
</target>
<target name="compile">
<mkdir dir="${classes.dir}"/>
<javac srcdir="${src.dir}" destdir="${classes.dir}" classpathref="classpath"/>
</target>
<target name="jar" depends="compile">
<mkdir dir="${jar.dir}"/>
<jar destfile="${jar.dir}/${ant.project.name}.jar" basedir="${classes.dir}">
<manifest>
<attribute name="Main-Class" value="${main-class}"/>
</manifest>
</jar>
</target>
<target name="run" depends="jar">
<java fork="true" classname="${main-class}">
<classpath>
<path refid="classpath"/>
<path refid="application"/>
</classpath>
</java>
</target>
<target name="clean-build" depends="clean,jar"/>
<target name="main" depends="clean,run"/>
</project>
而且HelloPe60t0.java定义如下:
package com.pe60t0.project2.component1;
public class HelloPe60t0{
public static void main(String[] args){
System.out.println("Hello pe60t0 wuzup?");
}
}
当我在命令行中键入“Ant”时,它会编译并正常运行。当我在Eclipse中并单击build.xml - > Run As Ant Build时,一切都可以正常运行。但是,Eclipse不接受HelloPe60t0.java位于com.pe60t0.project2.component1文件夹中,并且抱怨目录结构。所以我不知道为什么在命令行中所有的东西都编译和运行正常,并且eclipse抱怨。
任何帮助将不胜感激。请注意我是Ant新手,我一直在使用目录和文件夹时遇到问题,所以请原谅我是否漏掉了一些明显的问题。
问候,
斯托
您可以将以下信息添加到您的问题:您是如何将您的Java项目添加到eclipse的?你的项目的构建路径属性是什么(可以在'Properties> Java Build Path'中找到)?你的Java Build Path中包含你的目录'project2/src/java'吗?问题视图中显示的确切错误或问题是什么? – mliebelt