2012-02-01 16 views
3

私が達成しようとしていることは信じられないほど単純ですが、信じられないほど苦痛になっているようです。Blackberry 5.0 - Javaライブラリプロジェクトへの参照を追加する

私はProjectAがBlackBerry Applicationプロジェクトです。 ProjectBはJavaライブラリプロジェクトです。私はProjectAからProjectBを参照したいと思います。参照を追加することはできますが、ProjectAを実行すると機能しません。私は両方のプロジェクトのソースコードを持っているとの両方が、私は複数のものを試してみましたが、すべてが何らかの理由で失敗した1.4

Javaコンパイラでコンパイルしている:それが失敗したProjectBの 上

1.事前verify.exeをエラー "JARファイルの作成がエラー-1で失敗しました"と表示されます。codとjarファイルは作成されていますが、ProjectAにjarファイルを追加して実行すると動作しません。 .codファイルを追加する必要があるかどうかは不明です。

2.新しいBlackBerry Library Projectを作成し、ProjectAで参照します。 私は新しいプロジェクトProjectCを作成し、それにProjectBのjarファイルを追加します。次に、ProjectAのProjectCへの参照を追加します。しかし、私はProjectBからインポートクラスを傾ける

Plsは方法を提案します。 私はEclipseプラグインを使用しており、Eclipseのビルド機能に依存しています。

答えて

7

自分自身で答えを見つけました。誰かがこれにつまずいた場合に備えてここに掲載する。ここで手順は次のとおりです。

  1. は、JARとして、あなたのライブラリーとエクスポートを作成します(またはサードパーティのJARをダウンロードしてください)
  2. JARの実行preverify.exe

    preverify.exe -verbose -classpath「C :/ Program Files/Research in Motion/BlackBerry JDE 5.0.0/lib/net_rim_api.jar "jarname.jar

  3. あなたが運が良ければ、あなたは問題に遭遇することはありません。しかし、私は十分に幸運ではなかった。

    • jar.exeがPATHに追加されていない:私はこれの2つの原因がありますが、以下のエラー

Error: No such file or directory. JAR file creation failed with error -1

を得ました。その場合は、(Java インストールディレクトリにあります)PATHに追加してください。

  • jar.exeのcvfmまたは-cfmオプションが実行に失敗しました。理由を認識していませんが、これを修正する方法は、-cfオプションを使用し、.classファイルをポイントし、マニフェストファイルを使用しないことです。ここ
    例です。

    "C:\プログラムファイル\のJava \ jdk1.6.0_26 \ビン\のjar.exe" "出力の\ JSON-1.0.jar" -CF tmp12996/

  • tmp12996には、事前に確認された.classファイルが含まれています。 上記以外の問題が発生することがあります。

    1. 上記の手順でjarを作成したら、その構造が予想どおりであることを確認します。確認する1つの方法は、.jarの名前を.zipに変更し、解凍して確認することです。あなたが必要でない場合は、構造を変更して再パックすることができます(私は大きな変更を行いません)

    2. 次に、この新しく作成されたjarをBlackBerryアプリケーションに参照として追加しますあなたの日食にパスを構築し、注文とエクスポートウィンドウでそれをチェックしてください。

    3. これだけです!準備できた!あなたのアプリを実行!

    シミュレータで実行しようとすると、モジュールに検証エラーが含まれていることを示すエラーが発生することがあります。この問題の原因の1つは、ライブラリ(元のJAR)にJ2MEまたはBB JREと互換性のないAPIが含まれていることです。 Java 1.4(またはあなたのバージョンが何であれ)に対してコンパイルされているので、独自にライブラリをビルドするときにコンパイラエラーが発生することはありません。問題を理解するには、すべてのコードをBB Appプロジェクトに移動してビルドするのがベストです。それはあなたにすべての問題を先取りするでしょう。必要に応じて変更を加え、コードをライブラリに戻します。あなたが使用しているライブラリのソースコード(サードパーティのライブラリのようなもの)がない場合は、運が悪いかもしれません!また、私が打って解決したもの以外の問題があるかもしれないことを覚えておいてください。

    私はこれをすべて把握するのに莫大な時間を要しているので、これを文書化しています。そして最も少なかったと言えば、最もイライラしていた!

    1

    別の解決策が見つかりました。 JARファイルの事前検証中にエラー-1が発生した場合は、ライブラリアプリケーションを一度実行してください。アプリケーションを実行しないと、deliverablesフォルダが空になるためです。このフォルダが空でないことを確認してください。

    関連する問題