0

j2objc ツールを使用して、Android プロジェクトのロジック ファイルの一部を ObjectiveC コードに変換しようとしています。

実際のプロジェクトで多くの型エラーが発生するため、少なくとも helloworld を変換しようとしています。

public class Test {
    public static void main(String args[]) {
        System.out.println("Hello");
    }

}

これは を使用して完全にコンパイルできますがjavac、実行しようとするとj2objc奇妙なエラーが返されます。

The type java.lang.Object can not be resolved. It is indirectly referenced from required .class files.

ここでの問題は何ですか?最も重要なのは、これをどうすればよいですか?

編集:

コマンドラインは次のとおりです。

j2objc -sourcepath src/main/java src/main/java/org/takino/mtga/impl/datatypes/*java

環境:

JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_77.jdk/Contents/Home

(これは によって返されました/usr/libexec/java_home)

4

1 に答える 1

1

[はじめに] ページの手順を実行します。これは、既に行っている手順と似ています。Linux と OS X はどちらもデフォルトのシェルであるため、コマンド ラインから使用するのとさほど変わらないため、あまり問題にならないはずです。

j2objc スクリプトは関連する lib/jre_emul.jar を使用する bootclasspath として指定するため、@chrylis はパスについて適切なポイントを持っています。これは、すべての JRE クラス (オブジェクトを含む) が存在する場所です。おそらく、あなたの j2objc ディストリビューションがおかしくなったのでしょう。

j2objc ディストリビューションを再度ダウンロードして解凍しますが、ファイルを移動しないでください。次に、正しい jre_emul.jar を見つける /j2objc コマンドを使用します。

于 2016-04-10T22:43:42.187 に答える