Java Web Start清单问题
我试图通过java web start制作swing-app可再发行组件。 我用netbeans 7.4构建jar和jnlp。
我通过网络下载应用程序时收到此消息。(抱歉西class牙语)但它说manifest.mf不包含权限属性。
我没有使用受信任的认证(由CA)我自己使用netbeans工具创建了密钥库。
在我投入的project.properties
# Optional override of default Codebase manifest attribute, use to prevent RIAs from being repurposed manifest.custom.codebase=http://150.1.1.32:8084/ # Optional override of default Permissions manifest attribute (supported values: sandbox, all-permissions) manifest.custom.permissions=all-permissions manifest.file=manifest.mf
当我看到从主jar和所有依赖jar生成jar清单后,jar具有属性all-permissions
Permissions: all-permissions Created-By: 1.7.0_45-b18 (Oracle Corporation) Main-Class: com.onix.sirf.gui.executors.SwingExecutor Codebase: http://150.1.1.32:8084/
这是我的jnlp
title blabla Some description HelloWorld -- there are some more libraries -- here is one more library sqljdbc4.jar
和jnlpcomponent1.jnlp
jnlpcomponent1 MSFTSIG
我解决了
在jnlpcomponent1.jnlp
我看到sqljdbc4.jar
已经由microsoft签名。
当我查看它的manifest.mf
它没有属性Permissions: all-permissions
。 所以我从sqljdbc4.jar
删除所有清单文件并放入一个空文件(也删除MSFTSIG.SF
和MSFTSIG.RSA
)。 现在使用我的签名和Permissions: all-permissions
再次构建应用程序Permissions: all-permissions
清单文件中的Permissions: all-permissions
并且像魅力一样工作。