Nasa Worldwind SDK 有一些我希望运行的例子。我尝试通过两种方式运行 SDK 中提供的示例:
- 使用整个 SDK 源文件夹创建一个 Eclipse 项目。
- 指向所有 worldwind 依赖项(*.jar 和 *.dll 文件)
- 转到包含示例的文件夹:src\gov\nasa\worldwind\examples。
- 运行示例 ApplicationTemplate.java main。
- 创建一个空的 Eclipse 项目。
- 指向所有 worldwind 依赖项(*.jar 和 *.dll 文件)
- 指向worldwind.jar
- 然后将示例文件夹复制到我的 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.)。 有谁知道如何解决上面看到的这些运行时错误?
最佳答案
好的..这些是我在Windows环境下的Eclipse项目步骤:
- 创建一个新的 Eclipse 项目(空白
项目很好,只要有
src
文件夹) - 在此目录下创建
lib
文件夹 项目(在根目录下 项目文件夹) - 将所需的库和 DLL 放入
lib
文件夹:gluegen-rt.jar, jogl.jar, worldwind.jar, jogl.dll, gluegen-rt.dll, jogl_awt.dll, jogl_cg.dll
- 复制示例
HelloWorlWind.java
进入src
文件夹 - 将
lib
文件夹中的所有 JAR 添加到Referenced Libraries
树 右键单击每个 jar ,然后 选择Build Path > Add to Build 路径
- 右键单击
jogl.jar
Referenced Libraries
树和 选择Build Path > Configure Build 路径
。会弹出Properties
对话框 - 在
Properties
对话框中,转到Libraries 选项卡
并展开jogl.jar
树 - 选择
本地库位置
和 单击右侧的Edit
按钮。它 将弹出Native Library 文件夹 配置
对话框。 - 将
lib
文件夹设置为位置 单击Workspace...
的路径 按钮。
然后,运行 HelloWorlWind.java
。它将无一异常(exception)的展现出辉煌的世风大地!
请注意:一些 Worldwind 示例应用程序不会在您关闭 GUI 窗口后终止 JVM。
要使 ApplicationTemplate.java
正常工作,请确保复制所需的依赖项:
- ClickAndGoSelectListener.java
- LayerPanel.java
关于java - 美国宇航局世界风 : How do you fix these weird run time exceptions?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5652649/