简体   繁体   English

Java Web Start问题

[英]Java Web Start Questions

My company has been developing a desktop application for a long time and have been installing it with Installshield on Windows machines. 我的公司长期以来一直在开发桌面应用程序,并已在Windows计算机上使用Installshield将其安装。

But because we are going to add JavaFX to the application we cannot deploy it the way we used to so I am looking into Java Web Start as a way to move forward. 但是因为我们将JavaFX添加到应用程序中,所以我们无法像以前那样部署它,因此我将Java Web Start作为前进的一种方式。 But I am totally lost on it and want to ask some questions. 但是我对此完全迷失了,想问一些问题。

1) There does not seem to be any recent document discussing it, all the docs on the Oracle site seem to be older then 2005 some as old as 2001. Is Java Web Start still viable? 1)似乎没有讨论该文档的最新文档,Oracle网站上的所有文档似乎都比2005年旧,而与2001年一样。Java Web Start仍然可行吗?

2) My application needs access to the file system, dll's and what not. 2)我的应用程序需要访问文件系统,dll和其他文件系统。 It discusses needing to sign my code, but I see no real documents on how to do this and even then how do I do this for the specific need of Java Web Start so that I immediately have access to the file system. 它讨论了需要对我的代码进行签名的问题,但是我没有看到有关如何执行此操作的真实文档,甚至看不到如何针对Java Web Start的特定需求执行此操作,因此我可以立即访问文件系统。

3) I need to put on the file system files other then my jar file, such as image files and other jar and dll files. 3)除了我的jar文件之外,我还需要放置文件系统文件,例如图像文件以及其他jar和dll文件。 Can I do that in Java Web Start? 我可以在Java Web Start中这样做吗?

4) Can our application have more then one entry point? 4)我们的应用程序可以有一个以上的入口点吗? Basically we offer a suite of applications that each have menu entries from the start menu (all the entry points are in the main jar file). 基本上,我们提供了一套应用程序,每个应用程序都具有从开始菜单开始的菜单项(所有入口点都在主jar文件中)。 Can this be done? 能做到吗?

5) Can my application be available to all users of the computer using a shared set of config files? 5)使用一组共享的配置文件,我的应用程序可以供计算机的所有用户使用吗?

6) On Windows I HAVE no choice but to use ONLY 32 bit Java and JavaFX because of the DLL's we package with the system so even on 64 bit machines I need to have 32 bit Java loaded and make sure only the 32 bit Java launches my program. 6)在Windows上,我只能选择使用32位Java和JavaFX,因为DLL是我们与系统一起打包的,因此即使在64位计算机上,我也需要加载32位Java,并确保只有32位Java才能启动程序。 Can this be done with Java Web Start? 可以使用Java Web Start来完成吗?

Sorry for my ignorance. 对不起,对不起。

Bodger Bodger

1) Yes, definitely still available. 1)是的,肯定仍然可用。 I use it nearly every day on our apps! 我几乎每天都在我们的应用程序上使用它!

2) Yes, code needs to be signed. 2)是,代码需要签名。 Can't tell you how to do it off-hand though, I use Netbeans and it's got a simple "push this button and all the signing magic happens automatically" setup. 但是,无法告诉您如何临时使用它,我使用Netbeans,它具有一个简单的“按此按钮,所有签名魔术自动发生”的设置。

3-4) Good questions. 3-4)好问题。 I think so, but am not sure. 认为是,但不确定。 I've only had to manually tweak a couple of Java Web Start files on very rare occasions. 我只需要在极少数情况下手动调整几个Java Web Start文件。 Can't remember what can be done and what can't. 不记得可以做什么和不能做什么。

5) Not sure exactly what you mean by that. 5)不确定确切的意思。 Shared config files on Windows ends up going down this ugly road of dealing with UAC (some other platforms have similar permissions issues as well). Windows上的共享配置文件最终走上了处理UAC的丑陋之路(某些其他平台也存在类似的权限问题)。

6) I can't think of a way to explicitly enforce 32-bit launches, but 32-bit is the standard, you have to go out of your way to use 64-bit Java... I suppose you could have a user that does go through all the contortions of launching it in 64-bit, but that seems like one of those outliers that you might be able to just say "well, don't fiddle with that stuff". 6)我想不出一种方法来强制执行32位启动,但是32位是标准,您必须竭尽全力使用64位Java ...我想您可以拥有一个用户它确实经历了以64位启动它的所有扭曲,但是这似乎是您可以说“很好,不要摆弄这些东西”的那些离群值之一。 :-) :-)

1). 1)。 Cant say, i have stopped developing WebStart for Clients several years ago. 不能说,几年前我已经停止为客户开发WebStart。

2&3). 2&3)。 Yes you use the security setting in your config/start (jnlp) file. 是的,您可以在config / start(jnlp)文件中使用安全设置。

<security>
    <all-permissions/>
<security>

For the security you need the users permission which requires the application (basically all jars) to be signed. 为了安全起见,您需要用户许可,该许可要求对应用程序(基本上是所有jar)进行签名。

4). 4)。 Yes. 是。 Webstart can create links on the users desktop that use a specific jnlp file. Webstart可以在用户桌面上使用特定的jnlp文件创建链接。 This file includes the entry point. 该文件包括入口点。

<application-desc main-class="us.fl.k12....letters.clients.Main"/>

5). 5)。 Since you can copy your config files to a folder shared by all users i would say yes. 由于您可以将配置文件复制到所有用户共享的文件夹中,所以我会说是。

Also AFAIK all resources need to be bundled inside jars. 同样,AFAIK所有资源都需要捆绑在罐子中。

Edit: Very useful http://lopica.sourceforge.net/faq.html 编辑:非常有用的http://lopica.sourceforge.net/faq.html

Edit2: 2). 编辑2:2。 You can self sign your jars if you are using the app in house. 如果您在家中使用应用程序,则可以对自己的罐子进行自我签名。 There is no need for a fancy certificate. 不需要花式证书。 See http://wiki.plexinfo.net/index.php?title=How_to_sign_JAR_files for an easy way to create your own certificate. 有关创建自己的证书的简便方法,请参见http://wiki.plexinfo.net/index.php?title=How_to_sign_JAR_files

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM