我尝试启动的Jar文件与JNLP文件位于同一目录中。
如何在codebase
属性中指定该内容?
<jnlp codebase="file://" href="launch.jnlp" spec="1.0+">
答案 0 :(得分:5)
以下是使用codebase
的JNLP示例,设置桌面图标和启动画面
屏幕。请参阅oracle页面JNLP文件的结构和早期文档:
Java网络启动协议和API规范(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>
答案 1 :(得分:2)
基于文件的codebase
在部署时不起作用,在开发过程中,可以在运行时覆盖基于Web的代码库。
要获取用于测试的基于文件的URL,请在感兴趣的目录中创建File
对象,JNLP文件可能是最佳的。检查file.exists()
(检查我们的假设非常重要),然后调用file.toURI().toURL()
将其作为文件基URL。
另外,请务必使用JaNeLA检查JNLP。
答案 2 :(得分:1)
使用Web服务器时,标记为正确的答案是正确的,但如果您使用文件系统,则必须使用以下内容才能将当前目录用作代码库
<jnlp href="launch.jnlp" spec="1.0+">
这可以使用jdk 1.7.0_25