我是j2objc的新手,对翻译junit测试类有疑问。

我有一个类(Foo.java)和一个相应的测试类(FooTest.java)。我正在按照此链接中的步骤来翻译用Java编写的测试类。 https://developers.google.com/j2objc/guides/translating-junit-tests

但是在翻译时如何在实际类上添加依赖项。对于测试类中实际类的所有用法,它会在翻译步骤中引发找不到符号错误的情况。谢谢!

范例-

${J2OBJC_HOME}/j2objc -classpath ${J2OBJC_HOME}/lib/j2objc_junit.jar FooTest.java
FooTest.java:39: error: cannot find symbol
        Foo.setXYZ();
        ^

最佳答案

对这类问题的一般回答是,首先创建一个构建的javac命令,然后对j2objc使用相同的参数。这是因为j2objc使用javac作为其前端,并将通用参数传递给它。 (“找不到符号”字符串在javac的源代码中,而不在j2objc的源代码中。)

可能的解决方案(因为您未包括源代码)是将类路径定义为.:${J2OBJC_HOME}/lib/j2objc_junit.jar。这是因为javac的默认类路径为“。”,但是如果使用-classpath标志,它将仅使用那些指定的路径。由于路径之间用':'分隔,因此此字符串会添加默认的“。”。背部。

07-24 20:17