5

NASA Worldwind SDK には、実行したい例がいくつかあります。SDK で提供されているサンプルを実行するには、次の 2 つの方法があります。

  1. SDK ソース フォルダー全体を使用して Eclipse プロジェクトを作成します。
    • すべての worldwind 依存関係 (*.jar および *.dll ファイル) を指す
    • 例のあるフォルダーに移動します: src\gov\nasa\worldwind\examples。
    • サンプルの ApplicationTemplate.java main を実行します。
  2. 空の Eclipse プロジェクトを作成します。
    • すべての worldwind 依存関係 (*.jar および *.dll ファイル) を指す
    • worldwind.jar を指す
    • 次に、examples フォルダーを Eclipse プロジェクトにコピーします。
    • gov.nasa.worldwind.examples としてリストされているすべてのパッケージをサンプルにリファクタリングします。
    • サンプルの ApplicationTemplate.java main を実行します。

オプション(1.)を実行すると、エラーなしで正常にコンパイル/実行されます。

オプション (2.) を実行すると、コンパイルは成功しますが、実行時エラーが発生します。

Apr 13, 2011 12:18:35 PM gov.nasa.worldwind.WorldWind createComponent
SEVERE: Exception while creating World Wind component gov.nasa.worldwind.cache.BasicDataFileStore
Apr 13, 2011 12:18:35 PM gov.nasa.worldwind.WorldWind createConfigurationComponent
SEVERE: Unable to create class for configuration key gov.nasa.worldwind.cache.BasicDataFileStore
Exception in thread "main" java.lang.ExceptionInInitializerError
    at gov.nasa.worldwind.awt.WorldWindowGLCanvas.<init>(Unknown Source)
    at Main2.main(Main2.java:15)
Caused by: java.lang.IllegalStateException: Unable to create class for configuration key gov.nasa.worldwind.cache.BasicDataFileStore
    at gov.nasa.worldwind.WorldWind.createConfigurationComponent(Unknown Source)
    at gov.nasa.worldwind.WorldWind.initialize(Unknown Source)
    at gov.nasa.worldwind.WorldWind.<init>(Unknown Source)
    at gov.nasa.worldwind.WorldWind.<clinit>(Unknown Source)
    ... 2 more
Caused by: gov.nasa.worldwind.exception.WWRuntimeException: Exception while creating World Wind component gov.nasa.worldwind.cache.BasicDataFileStore
    at gov.nasa.worldwind.WorldWind.createComponent(Unknown Source)
    ... 6 more
Caused by: java.lang.NullPointerException
    at gov.nasa.worldwind.cache.BasicDataFileStore.<init>(Unknown Source)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at java.lang.Class.newInstance0(Unknown Source)
    at java.lang.Class.newInstance(Unknown Source)
    ... 7 more

ライセンスと構成管理の問題のため、オプション (2.) を使用することを強くお勧めします。上記の実行時エラーを修正する方法を知っている人はいますか?

4

2 に答える 2

3

わかりました..これらは、 Windows環境での私のEclipseプロジェクトの手順です。

  1. 新しいEclipsesrcプロジェクトを作成します (フォルダーがある限り、空のプロジェクトで問題ありません)。
  2. libこのプロジェクトの下 (プロジェクト フォルダーのルートの下) にフォルダーを作成します。
  3. 必要なライブラリと DLL をlibフォルダーに入れます。gluegen-rt.jar, jogl.jar, worldwind.jar, jogl.dll, gluegen-rt.dll, jogl_awt.dll, jogl_cg.dll
  4. HelloWorlWind.java サンプルをsrcフォルダにコピーします
  5. 各 jar を右クリックして、libフォルダ内のすべての JAR をツリーに追加し、Referenced LibrariesBuild Path > Add to Build Path
  6. ツリーで を右クリックしjogl.jar、 を選択します。 ダイアログボックスがポップアップしますReferenced LibrariesBuild Path > Configure Build PathProperties
  7. Propertiesダイアログボックスで、ツリーに移動し て展開Libraries tabし ますjogl.jar
  8. 選択して右側のボタンNative library locationをクリックします。ダイアログボックスEditがポップアップします。Native Library Folder Configuration
  9. libボタンをクリックして、フォルダーを場所のパスとして設定しWorkspace... ます。

次に、実行しHelloWorlWind.javaます。輝かしいWorldwind Earthを例外なく表示します。

注: いくつかの Worldwind サンプル アプリは、GUI ウィンドウを閉じた後でも JVM を終了しません。

が機能するためにはApplicationTemplate.java、必要な依存関係を必ずコピーしてください。

  • ClickAndGoSelectListener.java
  • LayerPanel.java
于 2011-04-14T01:39:09.100 に答える
1

オプション2で説明したことを正確に実行しても問題はありませんが、正常に機能します。新しくダウンロードしたWorldWindJavaソースコードのコピーを使用する場合は、WorldWind.jarファイルを使用する前にAntBuildを実行する必要があります。WorldWind.jarファイルは常に最新であるとは限らず、使用時に競合が発生する可能性があります。

基本的に、アクションから説明するのは次のとおりです。ソースコードを使用している場合は機能し、コンパイルされたコードを使用している場合は失敗します。

于 2011-05-31T13:24:31.497 に答える