2016-06-15 3 views
0

j2objcによって翻訳されるobjectiveCコードを使用して、迅速なフレームワークを作成します。JRE.frameworkを迅速なフレームワークにリンクする方法

私はソースをコンパイルするためにJavaファイルを追加し、以下の設定を使用しています

GENERATED_FILES_DIR = "$ {SRCROOT} /生成を"。

HEADER_SEARCH_PATHS = "$ {J2OBJC_HOME} /frameworks/JRE.framework/Headers" "$ {GENERATED_FILES_DIR}" "$ {J2OBJC_HOME}/include" $(継承);

LIBRARY_SEARCH_PATHS = $ {J2OBJC_HOME}/lib;

OTHER_LDFLAGS = -ljre_emul

CLANG_ENABLE_OBJC_ARC = NO

と私はエラーを得た:

"はJ2ObjC_header.h" を含む>>フレームワークモジュール内の非モジュラヘッダの 'XXXXX'

を含めます

次に、私は以下を行います:

CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES

まだエラーがあります。

私は 'JRE.framework' をリンクし、エラーがまだ存在するHEADER_SEARCH_PATHS

を設定します。

修正方法?

答えて

0

はまた、あなたはHEADER_SEARCH_PATHS"${J2OBJC_HOME}/include"を必要としない、あなたは今、JREのフレームワークを使用しているので、あなたもLIBRARY_SEARCH_PATHS = ${J2OBJC_HOME}/lib; OTHER_LDFLAGS = -ljre_emul;を削除することができ、そのほかにDEFINES_MODULE = NO;

を設定したいです。

あなたは--no-package-directoriesフラグなし.javaソースを翻訳しているし、あなたがディレクトリ構造を保持したい場合、あなたはまた、次の操作を行いたい:

  1. Xcodeの
  2. でフォルダ参照として生成されたファイルを追加します。
  3. Headers
  4. Publicセクション内のフォルダが再新しいRun Scrip相を追加Copy Bundle Resources
  5. ドロップからそれらを削除しますHeadersディレクトリから.mファイルを移動: find "$TARGET_BUILD_DIR/$PUBLIC_HEADERS_FOLDER_PATH" -name "*.m" -exec rm -f {} \;
  6. 今、あなたは#include <your-framework-name/path/to/header/Header.h>
を使用して、あなたの傘ヘッダーでそれらを参照することができます
関連する問題