首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使用PlayN + tripleplay进行编译

无法使用PlayN + tripleplay进行编译
EN

Stack Overflow用户
提问于 2011-12-06 02:33:45
回答 1查看 327关注 0票数 0

我已经在这个项目上工作了几个月,这周我又回到了这个项目上,似乎随着PlayN和tripleplay的快照,自从我得到了

代码语言:javascript
复制
Exception in thread "AWT-EventQueue-0" java.lang.Error: Unresolved compilation problem: 
Cannot invoke fillRect(int, int, float, float) on the primitive type void

at tripleplay.ui.Background.createSolidLayer(Background.java:90)
at tripleplay.ui.bgs.SolidBackground.instantiate(SolidBackground.java:26)
at tripleplay.ui.Elements.layout(Elements.java:191)
at tripleplay.ui.Element.validate(Element.java:317)
at tripleplay.ui.Interface.paint(Interface.java:120)
at com.jengibre.h4ck1t.bouncer.Bouncer.paint(Bouncer.java:110)
at playn.java.JavaPlatform$1.paint(JavaPlatform.java:216)
at javax.swing.JComponent.paintChildren(JComponent.java:862)
at javax.swing.JComponent.paint(JComponent.java:1038)
at javax.swing.JComponent.paintChildren(JComponent.java:862)
at javax.swing.JComponent.paint(JComponent.java:1038)
at javax.swing.JLayeredPane.paint(JLayeredPane.java:567)
at javax.swing.JComponent.paintChildren(JComponent.java:862)
at javax.swing.JComponent.paintToOffscreen(JComponent.java:5131)
at javax.swing.BufferStrategyPaintManager.paint(BufferStrategyPaintManager.java:278)
at javax.swing.RepaintManager.paint(RepaintManager.java:1224)
at javax.swing.JComponent.paint(JComponent.java:1015)
at java.awt.GraphicsCallback$PaintCallback.run(GraphicsCallback.java:21)
at sun.awt.SunGraphicsCallback.runOneComponent(SunGraphicsCallback.java:60)
at sun.awt.SunGraphicsCallback.runComponents(SunGraphicsCallback.java:97)
at java.awt.Container.paint(Container.java:1780)
at java.awt.Window.paint(Window.java:3375)
at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:796)
at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:713)
at javax.swing.RepaintManager.seqPaintDirtyRegions(RepaintManager.java:693)
at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:125)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

这是我的元项目pom.xml:http://pastebin.com/raw.php?i=qaMWx72C

这是我的java项目pom.xml:http://pastebin.com/raw.php?i=z3BF45yr

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-12-06 11:55:51

看起来你得到的是一个老版本的PlayN,它在Surface/Canvas上没有流畅的接口。

您可以运行:

代码语言:javascript
复制
mvn dependency:tree

在您的jar子模块(位于该目录中)中,查看哪些版本的PlayN jar文件用于构建您的项目。下面是我的一个游戏中的一个例子:

代码语言:javascript
复制
[INFO] --- maven-dependency-plugin:2.1:tree (default-cli) @ atlantis-core ---                                                   
[INFO] com.threerings.atlantis:atlantis-core:jar:1.0-SNAPSHOT                                                                   
[INFO] +- com.googlecode.playn:playn-core:jar:1.1-SNAPSHOT:compile                                                              
[INFO] +- com.threerings.nexus:nexus-core:jar:1.0-SNAPSHOT:compile                                                              
[INFO] |  \- com.threerings:react:jar:1.1:compile                                                                               
[INFO] +- com.threerings:tripleplay:jar:1.1-SNAPSHOT:compile                                                                    
[INFO] +- com.samskivert:pythagoras:jar:1.2-SNAPSHOT:compile                                                                    
[INFO] +- com.google.guava:guava:jar:10.0:compile                                                                               
[INFO] |  \- com.google.code.findbugs:jsr305:jar:1.3.9:compile                                                                  
[INFO] \- junit:junit:jar:4.8.1:test                                                                                            

如果您没有看到playn-core:jar:1.0.1或1.0.2 (如果是在您自己的PlayN版本上构建,则没有看到1.1-SNAPSHOT ),那么一定是出了什么问题。你可以通过直接在你的core/pom.xml中添加一个playn-core依赖来解决这个问题。通常,您的顶级pom.xml将定义您在项目中使用的PlayN版本:

代码语言:javascript
复制
<properties>
  <playn.version>1.0.2</playn.version>
</properties>

然后,您的core/pom.xml将利用该属性声明一个playn-core依赖项:

代码语言:javascript
复制
<dependency>
  <groupId>com.googlecode.playn</groupId>
  <artifactId>playn-core</artifactId>
  <version>${playn.version}</version>
</dependency>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8390093

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档