类名为antbuild的Javac编译器错误

时间:2015-01-23 13:39:26

标签: java ant javac

当我遇到无法解释的问题时,我正在尝试编译一个编译java项目源代码的ant构建。首先是我的蚂蚁目标:

<target name="compile-companymanage" depends="compile-company">
    <mkdir dir="${companymanagebin}"/>
    <javac destdir="${companymanagebin}">
        <src path="${companymanagesrc}" />
        <classpath refid="companyManage.classpath"/>
    </javac>
</target>

运行后我得到错误:

[javac] project\src\com\company\manage\vo\InvoiceL‌ineSupplierVM.java:31: error: class InvoiceLineSupplierVM is public, should be declared in a file named InvoiceLineSupplierVM.java
[javac] public class InvoiceL‌ineSupplierVM
[javac]        ^
[javac] 1 error

我们已经尝试了不同的项目,他们编译得很好。希望有人可以帮助我。

我们尝试使用相同的名称重命名文件和类。

1 个答案:

答案 0 :(得分:1)

为了完整性而添加答案,并简化将来会遇到此错误的其他人的生活。

您的姓名中很可能有一个不可打印的字符,无论是您的姓名还是您的文件名。这将导致编译器具有或期望的不匹配。

要解决此问题,通常要做的是重命名所涉及的文件和类。重要的是,在重命名时,不要复制和粘贴名称,而是键入它。这将确保不可打印的字符不会像文件和类的名称那样结束。