我正在尝试使用 gcj 构建 java 应用程序,但出现以下错误。自从我使用 gcj 以来已经有一段时间了(大约一年),所以我可能忘记了一些不明显的东西,但我很确定我一直都是这样做的。
multiple definition of `java resource .dummy'
gcj 版本在 Ubuntu 上是 4.4.1,在 cygwin/windows XP 上是 4.3.4,我正在构建它
gcj --main=my.MainClass --classpath=my my/*java
任何人在没有安装早期版本的 gcj 的情况下看到这个或知道解决方法。如果这是这样做的方式,有没有人知道如何在 cygwin 上做到这一点,或者我是否必须构建它?
这是给出此错误的最小测试用例
public class A {
public static void main(String[] args) {
System.out.println(new B());
}
}
public class B {
public String toString() {
return "Hello";
}
}
gcj --main=A src/A.java src/B.java
最佳答案
唯一报告的解决方案是编译为类文件,然后链接类文件。
以下不会产生错误:
gcj -I src -C src/A.java src/B.java
gcj -I src --main=A src/A.class src/B/class
关于java - GCJ 创建重复的虚拟符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2567230/