我正在试验 Java Web Start。
我刚刚编写了一个基本的 JApplet
,它在 Applet
类上有一个名为 getDocumentBase()
的方法。这会将完整的 URL
返回到 Applet
正在运行的位置(在 Tomcat 下),即 http://myserver:8080/myapp/whateverapplet.jar .
但是,我正在寻找与 Web 启动应用程序类似的东西。我需要知道它在哪里运行。有什么可以给我这些信息吗?
编辑
就运行位置而言,我的意思是如果我从我想要的 JNLP 文件运行 Web 启动:
如果我从我想要的网络上的文件夹运行 JAR:
\\服务器\我的应用程序
或者如果我从我机器上的文件夹运行 JAR,我想要:
D:\我的应用
结束编辑
最佳答案
我猜您想从正在运行的应用程序中获取代码库 URL?如果是这种情况,您可以使用此代码段:
final BasicService bs = (BasicService) ServiceManager.lookup(
"javax.jnlp.BasicService");
final URL codeBase = bs.getCodeBase();
请注意,您必须依赖 JNLP API编译此代码(用于 BasicService
类)。
关于Java Web Start 获取文档库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6371493/