我正在尝试使用gcj构建一个java应用程序但是得到以下错误.自从我使用gcj(一年左右)以来已经有一段时间了,所以我可能已经忘记了一些不明显的东西,但我很确定这就是我一直以来的做法.
multiple definition of `java resource .dummy'
Run Code Online (Sandbox Code Playgroud)
gcj版本在Ubuntu上是4.4.1,在cygwin/windows XP上是4.3.4,我正在构建它
gcj --main=my.MainClass --classpath=my my/*java
Run Code Online (Sandbox Code Playgroud)
任何人都可以看到这个或知道解决方法而无需安装早期版本的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
Run Code Online (Sandbox Code Playgroud)
唯一报告的解决方案是编译到类文件,然后链接类文件.
以下不会产生错误:
gcj -I src -C src/A.java src/B.java
gcj -I src --main=A src/A.class src/B/class
Run Code Online (Sandbox Code Playgroud)