Java游戏 - 游戏无法找到它的图形jar文件 [英] Java Game- Game can't find it's graphics jar file

查看:82
本文介绍了Java游戏 - 游戏无法找到它的图形jar文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的名字是Nick Soutter,我拥有一家小型游戏开发公司

www.aepoxgames.net )制作我们的第一款游戏( www.andromedaonline.net )在

java。


我写作是因为我们遇到了一个非常严重的问题,我希望

某人可能有想法。


我们的游戏有2个主要程序 - 一个是更新程序,另一个是游戏

客户端。更新程序(AndromedaOnline.jar)检查

图形,声音,客户端以及当然本身的更新。应用任何更新后,

更新程序运行客户端(AndromedaClient.jar)供人们玩。


当玩家在他们的系统上安装此程序时预先存在

版本的JAVA,运行正常。当他们在安装

之后尝试安装新的Java JRE时,它会失败。


我在我的系统上运行Java 1.4.1_05。这很好。在一些Alpha

测试人员报告客户端问题后,我们调出了一台测试计算机,安装了一台新的Windows XP,在系统上安装了Java 1.4.1_05,然后安装了

游戏。更新程序运行正常,但客户端无法运行。它试图从图形jar加载图形时抛出null

指针异常

文件(AndromedaGFX.jar)


这可能听起来很奇怪,这个问题只会发生在新安装的JRE上。


问题似乎是客户端是没有从

相关的图形jar中读取图形。更新程序很小,所以我们能够在更新程序中包含

图形,而不是单独的jar,这可能是为什么更新程序正常工作的原因。 br />

如果我们把糟糕的仙女座游戏文件夹,把它复制到另一台计算机,上面有

Java,游戏运行正常。但是将文件夹复制回新安装的b / b
,它就不行了。


我们怀疑有类路径问题,但是有一个客户端中的classpath信息

jar应该阻止这个。此外,我们已经更新了所有关于新安装的类路径

信息,aswel如路径,以及JAVA_HOME

环境变量。它都没有用(有趣的是,

类路径没有在工作机器上设置,它从客户端获得

清单)。


我们已经在三台Windows机器上报告了这个问题,并且已经无法修复它。在至少5台机器上,它似乎运行良好。我们还没有找到导致这个问题的线索。它似乎不是游戏或代码,因为从坏复制游戏文件夹机器到好的一个

允许文件夹中的客户端工作。


这很奇怪,我们这里的所有人都很难过。我们很快就会进入测试版,并且显然这是一个严重的问题。再一次,听起来很奇怪,

只有普通的线程是新安装的java,不存在。在您的机器上安装java

(任何1.4.1或更高版本),客户端无法加载它自己的

图形文件(客户端清单副本)如果你想查看基本文件,可以在
http://www.aepox.net/andromeda/Downl...omedaBasic.zip 。这包括更新者和客户端以及库的
。如果您运行更新程序

(AndromedaOnline.jar),它将尝试下载图形包

(AndromedaGFX.jar)。如果你想下载整个软件包(图形和

所有内容),那就是
http://www.aepox.net/andromeda/Downl...medaOnline.zip


谢谢你的时间。任何关于这个麻烦的问题的想法都会非常感激。


Nick Soutter


Aepox游戏


清单 - 版本:1.0版


规格 - 标题:仙女座GameClient课程


Class-Path:lib / jmf.jar; AndromedaGFX.jar; AndromedaSFX.jar;


Main-Class:com.andromeda.gameclient.PreGameClient


实施 - 标题:com.andromeda.gameclient


规格 - 供应商:Aepox游戏


规格 - 版本:1.0


实施 - 版本:40119


姓名:com / andromeda / gameclient


实施 - 供应商:Aepox游戏

My name is Nick Soutter, I own a small game development company
(www.aepoxgames.net) making our first game (www.andromedaonline.net) in
java.

I am writing because we are having a very serious problem, and I was hoping
someone might have thoughts.

Our game has 2 main programs- one is an updater, the other is the game
client. The updater (AndromedaOnline.jar) checks for updates to the
graphics, sound, client, and of course itself. After applying any updates,
the updater runs the client (AndromedaClient.jar) for people to play with.

When players install this program on their systems with pre-existing
versions of JAVA, it runs fine. When they try to install it after installing
a fresh, new Java JRE, however, it fails.

I am running Java 1.4.1_05 on my system. This runs fine. After some Alpha
testers reported client problems, we brought up a test computer, installed a
fresh Windows XP, installed Java 1.4.1_05 on the system, then installed the
game. The updater ran fine, but the client failed to run. It threw null
pointer exceptions when it tried to load the graphics from the graphics jar
file (AndromedaGFX.jar)

Strange as this may sound, this problem SEEMS to only to occur on newly
installed JRE''s.

The problem appears to be that the client is not reading graphics from the
associated graphics jar. The updater is small, so we were able to include
its graphics with the updater, instead of in a separate jar, which is
probably why the updater works fine.

If we take the bad Andromeda game folder, copy it to another computer with
Java on it, the game works fine. But copy the folder back to the freshly
installed computer, and it won''t work.

We suspected a classpath issue, but there''s a classpath info in the client
jar which should prevent this. Further, we''ve updated all the classpath
information on the new installation, aswel as path, and JAVA_HOME
environmental variables. None of it worked (it is interesting to note that
classpath isn''t set on the working machine, it gets that from the client
manifest).

We''ve had this problem reported on three windows machines and have been
unable to fix it. On at least 5 machines it appears to runs fine. We haven''t
a clue what is causing this problem. It does not appear to be the game or
the code, as copying the game folder from a "bad" machine to a "good" one
allows the client within the folder to work.

It''s very strange, and ALL of us here are stumped. We go to beta soon, and
obviously this is a serious problem. Again, as strange as it sounds, the
only common thread is new installs of java where none existed. Install java
on your machine (any 1.4.1 or higher), and the client can''t load it''s own
graphics files (copy of client manifest below).

If you''d like to see the basic files, they can be found at
http://www.aepox.net/andromeda/Downl...omedaBasic.zip. This includes
the updater and client, as well as the libraries. If you run the updater
(AndromedaOnline.jar) it will attempt to download the graphics package
(AndromedaGFX.jar). If you want to download the entire package (graphics and
everything) it''s at
http://www.aepox.net/andromeda/Downl...medaOnline.zip

Thank you for your time. Any thoughts as to the cause of this troublesome
problem would be MUCH appreciated.

Nick Soutter

Aepox Games

Manifest-Version: Version 1.0

Specification-Title: Andromeda GameClient Classes

Class-Path: lib/jmf.jar;AndromedaGFX.jar;AndromedaSFX.jar;

Main-Class: com.andromeda.gameclient.PreGameClient

Implementation-Title: com.andromeda.gameclient

Specification-Vendor: Aepox Games

Specification-Version: 1.0

Implementation-Version: 40119

Name: com/andromeda/gameclient

Implementation-Vendor: Aepox Games

推荐答案

BlackHawke写道:
BlackHawke wrote:
Class-Path:lib / jmf.jar; AndromedaGFX.jar ; AndromedaSFX.jar;
Class-Path: lib/jmf.jar;AndromedaGFX.jar;AndromedaSFX.jar;




我不知道这是不是问题,但你的班级路径确实如此不符合jar文件的

清单规范。


您可以尝试用空格替换分号。

http://java.sun.com/j2se/ 1.3 / docs / guide / jar / jar.html


祝你好运


Phyrum Tea

-

名/姓:Phyrum Tea, me@tea.ch
http://www.tea.ch/ - 填字游戏软件



I don''t know if it''s a problem but your class-path does not meet the
manifest specification for jar files.

You may try to replace the semicolons with a space.

http://java.sun.com/j2se/1.3/docs/guide/jar/jar.html

Best regards

Phyrum Tea
--
Firstname/Lastname: Phyrum Tea, me@tea.ch
http://www.tea.ch/ - Crossword Puzzle Software


Ohhhhhhhh ....


你是对的!!


我试了一下,不幸的是没有工作....我会认为

就是这样的......感谢你的建议,但很好听!


所以不幸的是,尽管解决了这个问题,但这仍然无法正常工作...... :(


其他任何想法?


Ni ck


Phyrum Tea < me@tea.ch>在消息中写道

news:40 ********** @ news.bluewin.ch ...
Ohhhhhhhh....

You''re right!!

I gave it a shot, and unfortunately that didn''t work.... I''d think that
would have been it... Thank you for the suggestion though, nice catch!!!

So unfortunately, despite fixing that problem, this still doesn''t work... :(

any other thoughts?

Nick


"Phyrum Tea" <me@tea.ch> wrote in message
news:40**********@news.bluewin.ch...
BlackHawke写道:
BlackHawke wrote:
Class-Path:lib / jmf.jar; AndromedaGFX.jar; AndromedaSFX.jar;
Class-Path: lib/jmf.jar;AndromedaGFX.jar;AndromedaSFX.jar;



我不知道这是不是问题而是你的问题class-path不符合jar文件的
清单规范。

你可以尝试用空格替换分号。

http://java.sun.com/j2se/1.3/docs/指南/ jar / jar.html

致以最好的问候

Phyrum Tea
-
名/姓:Phyrum Tea, me@tea.ch
http://www.tea.ch/ - 纵横字谜软件



I don''t know if it''s a problem but your class-path does not meet the
manifest specification for jar files.

You may try to replace the semicolons with a space.

http://java.sun.com/j2se/1.3/docs/guide/jar/jar.html

Best regards

Phyrum Tea
--
Firstname/Lastname: Phyrum Tea, me@tea.ch
http://www.tea.ch/ - Crossword Puzzle Software



Ohhhhhhhh ....


你是对的!!


我试了一下,不幸的是,d我不会工作....我会认为

就是这样......感谢你的建议,但很好听!


所以不幸的是,尽管解决了这个问题,但这仍然无法正常工作...... :(


其他任何想法?


尼克



" Phyrum Tea" < me@tea.ch>在消息中写道

news:40 ********** @ news.bluewin.ch ...
Ohhhhhhhh....

You''re right!!

I gave it a shot, and unfortunately that didn''t work.... I''d think that
would have been it... Thank you for the suggestion though, nice catch!!!

So unfortunately, despite fixing that problem, this still doesn''t work... :(

any other thoughts?

Nick


"Phyrum Tea" <me@tea.ch> wrote in message
news:40**********@news.bluewin.ch...
BlackHawke写道:
BlackHawke wrote:
Class-Path:lib / jmf.jar; AndromedaGFX.jar; AndromedaSFX.jar;
Class-Path: lib/jmf.jar;AndromedaGFX.jar;AndromedaSFX.jar;



我不知道这是不是问题而是你的问题class-path不符合jar文件的
清单规范。

你可以尝试用空格替换分号。

http://java.sun.com/j2se/1.3/docs/指南/ jar / jar.html

致以最好的问候

Phyrum Tea
-
名/姓:Phyrum Tea, me@tea.ch
http://www.tea.ch/ - 填字游戏软件



I don''t know if it''s a problem but your class-path does not meet the
manifest specification for jar files.

You may try to replace the semicolons with a space.

http://java.sun.com/j2se/1.3/docs/guide/jar/jar.html

Best regards

Phyrum Tea
--
Firstname/Lastname: Phyrum Tea, me@tea.ch
http://www.tea.ch/ - Crossword Puzzle Software



这篇关于Java游戏 - 游戏无法找到它的图形jar文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆