2011-11-12 87 views
0

我想啓動一個外部JAR,我有路徑,存儲在一個名爲jarPath的字符串中。這個外部JAR在另一個名爲natives的目錄中有多個依賴關係。如何在設置類路徑時從另一個JAR啓動外部JAR?

哪有我,一個Java小程序中,交換這個JAR(如交換applet代碼的執行,我的外部JAR的代碼)。外部JAR的主類是zombie.engine.Lighting2。

+0

的依賴性是罐,和本機庫由LWJGL 使用的主要類擴展BasicGame,其是從被稱爲slick.jar另一個JAR。最後,它使用OpenGL創建一個窗口。 – liamzebedee

回答

1

對於此次發佈的,我會建議Java Web Start

原住民很容易使用JWS部署,如添加其它罐到運行時類路徑。 applet和應用程序(JFrameJWindow等)可推出了採用JWS自成立以來1.2自由浮動,但是從插件2架構在Sun的JRE 1.6.0_10介紹,可以使用JWS部署嵌入式小程序。

通過這種途徑來部署,你會:

  • 指定zombie.engine.Lighting2作爲main-class(在JNLP啓動文件)。
  • 使用jar元素添加依賴罐。
  • 把當地人JAR文件(一個罐子每個OS效果最好)的根目錄,並將它們添加到OS專用resources元素。

與本地人以及在同一個JNLP中引用的任何其他Jars的罐子將需要數字簽名,並且JNLP請求all-permissions


我希望能夠把JAR離線加載..

offline-allowed元素。

offline-allowed element:可選的offline-allowed元素指示應用程序是否可以離線啓動。

如果指定脫機允許的,那麼該應用程序可以離線通過Java應用程序高速緩存查看器啓動,並且可以創建快捷方式,其應用程序脫機啓動。

..從部分information元素的JNLP。

..我想有一個自定義負載屏幕,

JWS提供了一個簡單的GIF或JPEG基礎飛濺,但好像你談論更多..

..其中包含用於下載核心遊戲和登錄用戶的自定義功能。

的安裝程序。有關安裝人員,請參閱ExtensionInstallerService。部分JNLP API。安裝者可能經常需要的其他東西是DownloadService/DownloadService2PersistenceService

+0

我需要它像Minecraft的發射器,所以沒有 – liamzebedee

+0

Minefcraft的發射器是什麼樣的? JWS發佈的方式不等於什麼? –

+0

好吧,我希望能夠離線加載JAR,我想要有一個自定義加載屏幕,該加載屏幕包含用於下載核心遊戲和登錄用戶的自定義函數。 – liamzebedee

0

你可以使用類java.lang.Runtime中的EXEC(字符串命令),給你傳遞的命令是Java的罐子/ path_of_your_jar_app -classpath/path_of_the_classpat_library,也許 您需要。