J2objc 为 Jnit 测试类添加源类依赖项



我对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标志,它将仅使用这些指定的路径。由于路径由":"分隔,因此此字符串会添加默认的"."。

最新更新