我尝试启动的 Jar 文件与 JNLP 文件位于同一目录中。如何在我的codebase
属性中指定它?
<jnlp codebase="file://" href="launch.jnlp" spec="1.0+">
我尝试启动的 Jar 文件与 JNLP 文件位于同一目录中。如何在我的codebase
属性中指定它?
<jnlp codebase="file://" href="launch.jnlp" spec="1.0+">
codebase
这是一个使用设置桌面图标和闪屏的示例 JNLP 。请参阅 Oracle 页面 Structure of the JNLP file,以及更早的文档:Java Network Launching Protocol and API Specification (JSR-56) 非常详尽。
<?xml version="1.0" encoding="utf-8"?>
<!-- JNLP File for YourWebstart -->
<jnlp
spec="1.5+"
codebase="http://YourWebsiteurl.com/YourWeblaunchPage"
href=”Your.jnlp">
<information>
<title>YourPrograms</title>
<vendor>YourCompany</vendor>
<description>Your application</description>
<description kind="short">Your weblaunch description</description>
<icon href="YourdesktopIconLogo.png"/>
<icon kind="splash" href="YourSplashScreenImage.png"/>
<shortcut online="true">
<desktop/>
</shortcut>
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.6+"
href="http://java.sun.com/products/autodl/j2se"/>
<jar href="YourApplication.jar"/>
</resources>
<application-desc main-class="YourMainClassLocation.YourMainClass">
<argument>AnyArgumentsYouWantToPassIntoYourApplication</argument>
</application-desc>
</jnlp>
基于文件codebase
在部署时将不起作用,并且在开发期间,可以在运行时覆盖基于 Web 的代码库。
要获取基于文件的 URL 进行测试,File
请在感兴趣的目录中创建一个对象,JNLP 文件可能是最好的。检查file.exists()
(检查我们的假设非常重要),然后调用file.toURI().toURL()
以将其作为文件基础 URL 获取。
此外,请务必使用JaNeLA检查 JNLP 。
当您使用 Web 服务器时,标记为正确的答案是正确的,但是如果您使用文件系统,则必须使用以下内容才能将当前目录用作代码库
<jnlp href="launch.jnlp" spec="1.0+">
这适用于 jdk 1.7.0_25