2014-01-30 48 views
1

我刚刚开始在java中使用swing,并且遇到了一个奇怪的问题。我试图添加启动画面(http://wiki.netbeans.org/Splash_Screen_Beginner_Tutorial),并且一切正常,直到我将splash:src/Splash.png添加到我的VM选项。因为如果Java试图找到我的PNG文件中的主类搜索主类的图像?

Error: Could not find or load main class splash:src.splash.png Java Result: 1

这是???:一旦我这样做,我得到这个错误我相信我的文件是在正确的位置,这是它的样子:

http://i.imgur.com/Kv8GIsP.png

而我main.java只是默认秋千架形式。任何线索怎么回事?

谢谢!

编辑:新的文件格式:

enter image description here

变更清单和虚拟机的设置,同样的错误:Error: Could not find or load main class splash:images.splash.png Java Result: 1

+1

''我相信我的文件在正确的位置,......“' - 最好假设它不是,然后证明它在正确的位置。 –

+0

在我发布的图片中,这表明它在正确的位置,对吧? – Nathan

+0

你如何运行(或试图运行)应用程序?我的猜测是你错过了 - 从VM参数,它应该读取'-splash:src.splash.png'。 –

回答

4

从您列出的错误中,您看起来像从splash vm选项中错过了-。这意味着在命令行是:

java splash:src.splash.png Main.class 

意味着Java可执行认为你要求它运行splash:src.splash.png

命令行应该是(注意,你并不需要包括src目录):

java -splash:images/splash.png Main.class 

检查VM选项在Netbeans和其校正成-splash:images/splash.png

+0

,但是当我使用'-splash:splash.png'时没有飞溅。我需要使用'-splash:images/splash.png'。谢谢!! – Nathan

+0

是的,在将图像移动到另一个目录后,您将需要 - 我会更新答案。 –

0

我强烈建议你puting在其他目录比.java(源文件)其他文件。在最常见的情况下,src是Java IDE(至少Eclipse和NetBeans)放置源文件的地方,它非常标准,并且其中的文件夹层次结构必须与您的Java软件包名称匹配。所以,将图像移动到另一个文件夹,比如说img,然后再试一次。

+2

当程序运行时,类和png都将在类路径中,这在很大程度上是不相关的。 –

+0

我照你所说的做了,但问题仍在继续。尽管遵循适当的标准仍然很好,但我认为它编译的是 – Nathan