0

更新

我无法正确更新的原因是我没有正确安装游戏的 jar 文件。通过首先在命令行上运行它来解决这个问题:

mvn install:install-file -DgroupId=com.mygame -DartifactId=mygame-core -Dversion=0.9-beta -Dpackaging=jar -Dfile=/home/klenwell/projects/mygame/playn/mygame/java/target/mygame-java-0.9-beta.jar

然后,在 Eclipse 中,我右键单击 java 文件夹 > Maven > 测试。这更新了我的所有依赖项,包括 lwjgl。

否则,请参阅thomasbroad 的回答

原始问题

我已经就此主题咨询了以下权威机构并应用了他们的各种建议:

部分问题是我不确定我应该遵循 Maven 说明还是 Eclipse 说明。我已经尝试了两者之间的一切。

我正在使用 Maven 在 Eclipse 上的 Ubuntu 12.04 64 位中工作。一切正常,直到我将 POM 文件中的 PlayN 版本从 1.2 更改为 1.3.1 并引入了 lwjgl 依赖项。

我所期望的工作:

1) 下载 lwjgl(最新版​​本 2.8.4)并按照 lwjgl.org 说明进行测试(成功)

2)更新相应的POM文件

2A) 将 lwjgl.version 作为属性添加到 mygame/pom.xml

  <properties>
    <playn.version>1.3.1</playn.version>
    <lwjgl.version>2.8.4</lwjgl.version>
  </properties>

2B) 将 lwjgl 作为依赖项添加到 mygame/mygame-java/pom.xml

  <dependency>
    <groupId>org.lwjgl.lwjgl</groupId>
    <artifactId>lwjgl</artifactId>
    <version>${lwjgl.version}</version>
  </dependency>

3) 在 Eclipse > Run As > Run Configurations > Arguments 中右键单击 mygame-java 项目,然后将其中一个-Djava.library.path=target/natives或添加-Djava.library.path=/absolute/path/to/my/lwjgl/lib到 VM 参数。(我已经尝试了两种变体。)

我可以在 Eclipse 中看到我的 java 项目文件夹下列出的依赖项。当我遵循 Eclipse 的 lwjgl.org 指南时,我可以看到 java 项目文件夹下列出的 jar。但我仍然得到错误。

在经历了两个小时令人头疼的挫折之后,我希望有人能指出我的致命疏忽,或者提供明确的指示来帮助我重新开始工作。谢谢。

4

3 回答 3

1

不久前,我将我的项目从 1.2 升级到了 1.3。我只更新了我的pom.xml文件以引用新版本的 PlayN 。我没有手动安装lwjgl,也没有添加lwjgl依赖项,因为该依赖项是由 PlayN 隐式引入的

手动将此处找到的差异应用到您的项目,到您的 pom。

关键部分是 java pom 中告诉 Maven 解包本机依赖项的部分。这部分实际上是在之前的 diff 中添加的,所以你可能也想看看那里

现在,您的 IDE 很可能会告诉您,您的项目与您的 pom 不是最新的,请更新您的项目,这应该会引入lwjgl依赖项并正确设置它。

于 2012-06-29T16:46:34.300 回答
1

我相信您应该将-Djava.library.path参数添加到 VM Arguments,而不是运行时配置中的 Program Arguments。

另一个 -using maven- 选项在Getting Started 页面上进行了描述,值得注意的是,默认的嵌入式 Maven 对于开发来说是错误的,你应该下载并使用至少 Maven 3.0.3,因为它在页面上提到(但我猜你已经这样做了)。

于 2012-07-04T18:52:08.773 回答
0

我刚刚使用 PlayN 1.4 开始了一个新项目,并在 Eclipse 中再次遇到了这个问题。解决方法如下:

右键单击 mygame-java > 运行方式 > 运行配置...

然后将以下内容添加到参数选项卡下的 VM 参数中:

-Djava.library.path=target/natives

然后成功作为应用程序运行。

在某一时刻,我还运行了mvn install:install-file...有问题的命令,但我不确定这是否有必要。

于 2012-08-13T04:42:25.190 回答