标签: java-web-start

如何重新创建webstart应用程序的快捷方式?

我在appliation的jnlp描述符中使用快捷方式标记为我的应用程序创建桌面链接和菜单项.

如果这些快捷方式在客户端上被删除 - 如何在没有用户操作的情况下自动重新安装?是否有jnlp文件的配置选项?

(顺便说一句,我使用的是java6)

java jnlp java-web-start

10
推荐指数
2
解决办法
1万
查看次数

如何在jnlp文件中指定JRE范围?

我们有一个使用Java Web Start的Java应用程序.jnlp文件配置为[j2se version ="1.5+"].因此,如果安装了JRE 1.5和1.6,则应用程序将在1.6上运行.

现在,我们要求应将应用程序限制为仅在范围内运行 - JRE 1.5.0_07到JRE 1.5.0_17

[j2se version ="1.5*"]将无效 - 它将始终使用1.5系列中最新的jre启动应用程序.

我可以通过包含href属性来请求确切的产品版本.[j2se version ="1.5.0_14"href ="http://java.sun.com/products/autodl/j2se"/]

但是如何在jnlp文件中指定特定范围的JRE,以便JWS仅从该范围中获取JRE?因此,如果安装了1.5.0_07,1.5.0_17和JRE 6,它应该在1.5.0_17上运行应用程序.

有没有一个很好的方法来实现这一目标?

java jnlp java-web-start

9
推荐指数
1
解决办法
7522
查看次数

使用Java Web Start/JNLP启用JVM选项

我正在创建一个Web Start应用程序,它将受益于一些较新的JVM选项(特别是转义分析,G1垃圾收集器等)

同时,我希望应用程序能够在不支持这些选项的旧JVM上正常工作.

有没有一个很好的方法来实现这一目标?

java jnlp jvm java-web-start

9
推荐指数
1
解决办法
1万
查看次数

为什么Java 7请求签名应用程序的网络权限?

从Java 7 Update 5开始,我的Java Web Start应用程序正在请求建立连接的权限.该应用程序使用有效证书进行签名.

将显示一个弹出窗口,其中包含以下文本:

该应用程序已请求与www.example.com建立连接的权限.你想允许这个动作吗?[确定] [取消]

在拒绝请求时,我在控制台上获得此跟踪:

Uncaught error fetching image:
java.lang.SecurityException
    at java.lang.SecurityManager.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkConnect(Unknown Source)
    at com.sun.javaws.security.JavaWebStartSecurity.checkConnect(Unknown Source)
    at sun.awt.image.URLImageSource.checkSecurity(Unknown Source)
    at sun.awt.image.ImageRepresentation.imageComplete(Unknown Source)
    at sun.awt.image.InputStreamImageSource.errorConsumer(Unknown Source)
    at sun.awt.image.InputStreamImageSource.setDecoder(Unknown Source)
    at sun.awt.image.InputStreamImageSource.doFetch(Unknown Source)
    at sun.awt.image.ImageFetcher.fetchloop(Unknown Source)
    at sun.awt.image.ImageFetcher.run(Unknown Source)
Run Code Online (Sandbox Code Playgroud)

这是请求权限时的线程转储:

"Image Fetcher 2" daemon prio=8 tid=0x04198000 nid=0xc24 in Object.wait() [0x0470e000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1d67b050> (a java.lang.Object)
        at java.lang.Object.wait(Object.java:503)
        at com.sun.javaws.ui.JavawsSysRun.delegate(Unknown Source)
        - locked <0x1d67b050> (a java.lang.Object) …
Run Code Online (Sandbox Code Playgroud)

java security java-web-start

9
推荐指数
2
解决办法
2038
查看次数

我在哪里可以找到jdk 7中的jnlp api jar?

可能重复:
在JDK 1.7中找不到jnlp.jar

对于jdk 1.6,它可以在这里找到(根据我在哪里可以下载JNLP.jar):

${java.home}/sample/jnlp/servlet/jnlp.jar
Run Code Online (Sandbox Code Playgroud)

但是,我在jdk 7 home中看不到这个目录.

它去了哪里?

java jnlp java-web-start

9
推荐指数
2
解决办法
1万
查看次数

Java 7使用Web Start打破OS X上的SWT应用程序

我们有一个通过使用SWT库的webstart启动的应用程序.

众所周知,osx需要swt库在主线程中运行,所以我们在jnlp中有这个:

<resources os="Mac"> 
    <j2se version="1.6+" java-vm-args="-XstartOnFirstThread"/>
    <jar href="swt-mac64.jar"/>
</resources>
Run Code Online (Sandbox Code Playgroud)

由于我们已经升级到Java 7(1.7.0_10),似乎webstart没有将"-XstartOnFirstThread"传递给它启动的java进程.

我可以从'ps'看到java进程没有得到"-XstartOnFirstThread"选项.

有谁知道如何让webstart回到之前的行为?

问候,戈德.

这是webstart日志显示的内容:

Java Web Start 10.10.2.18
Using JRE version 1.7.0_10-b18 Java HotSpot(TM) 64-Bit Server VM
User home directory = /Users/shier
----------------------------------------------------
c:   clear console window
f:   finalize objects on finalization queue
g:   garbage collect
h:   display this help message
m:   print memory usage
o:   trigger logging
p:   reload proxy configuration
q:   hide console
r:   reload policy configuration
s:   dump system and deployment properties
t:   dump thread …
Run Code Online (Sandbox Code Playgroud)

java macos swt java-web-start java-7

9
推荐指数
1
解决办法
1608
查看次数

如何使用JNLP将命令行参数传递给应用程序?

我的应用程序有一个JNLP包.现在我需要将命令行参数传递给我的应用程序.如何扩展我的JNLP文件以列出命令行参数?

例如,我需要说java main.class arg1 arg2,arg1并且arg2需要作为JNLP文件的一部分提及.

java jnlp arguments java-web-start

9
推荐指数
1
解决办法
1万
查看次数

如何在不双击JNLP的情况下自动启动java web启动

我有一个java applet应用程序,我们的客户可以通过我们的网站访问它.由于Microsoft edge和chrome停止支持java插件,我们将applet转换为通过JNLP和Java Web Start启动,不幸的是,在两个浏览器中,JNLP已下载,客户应双击该文件以启动Java Web Start.

我们的客户对这种行为感到非常失望,我正试图找到解决这个问题的方法.

java jnlp google-chrome java-web-start microsoft-edge

9
推荐指数
1
解决办法
5万
查看次数

包javax.jnlp在模块java.jnlp中声明,它不在模块图中

我有一个使用Java webstart技术的项目.我决定将Java版本从8升级到9.但是,我在编译时面临以下错误:

error: package javax.jnlp is not visible
import javax.jnlp.DownloadServiceListener;
        ^
(package javax.jnlp is declared in module java.jnlp, which is not in the module graph)
Run Code Online (Sandbox Code Playgroud)

我试图包括C:\Program Files\Java\jdk-9\lib\javaws.jar在类路径中,但仍然存在同样的问题.

java jnlp java-web-start java-9

9
推荐指数
1
解决办法
2772
查看次数

Java9 JNLP --add - 打开不起作用

我创建了一个简单的测试用例来测试Java 9 Web Start的新模块.遗憾的是,Java 9 Web Start默认情况下不支持像常规Java 9那样的--permit-illegal-access.

Java 9 Web Start假设支持--add-opens(请参阅https://bugs.openjdk.java.net/browse/JDK-8172986).

我正在使用Java 1.9.0_181_ea.

这是我的测试类:

import java.awt.Toolkit;
import java.lang.reflect.Method;
import java.lang.IllegalAccessException;
import java.lang.reflect.InvocationTargetException;

public class Java9BreaksWhenTest {

    public static void main(String args[]) throws IllegalAccessException, InvocationTargetException {
       System.out.println("Hello World");

       // Do some dangerous reflection
       Toolkit toolkit = Toolkit.getDefaultToolkit();
       Class c = toolkit.getClass();
       while(true) {
           Method m = null;
           try {
               m = c.getDeclaredMethod("setDesktopProperty", String.class, Object.class);
           } catch (NoSuchMethodException ex) {
               c = c.getSuperclass();
               if (c!=null)
                   continue;
           } catch (SecurityException …
Run Code Online (Sandbox Code Playgroud)

java jnlp java-web-start java-9 java-module

9
推荐指数
1
解决办法
2241
查看次数