制作适用于Windows和Mac的Java应用程序

5

我刚开始学Java编程,但我有很多VB的经验。如果有人能指点我正确的方向,我将非常感激!

我正在开发一个简单的应用程序,它应该能够在Windows(xp、Vista、7..32位和64位)和Mac上运行。

以下是我有的几个问题:

  1. 我需要为每个Windows版本(xp、Vista、7..32位和64位)和Mac制作多个版本吗?
  2. 我们如何在Java中进行对注册表的更改?
  3. 使应用程序自动更新

非常感谢任何帮助资源链接,这样我就可以帮助别人了!


你可以看一下RealBasic。它有熟悉的语法,并且可以在许多平台上本地运行。 - Byron Whitlock
5个回答

3
  1. Java有“编译一次,到处运行”的原则 - 这意味着只要你有适当的JRE,你就可以在任何地方运行程序。

    只要你的应用程序不需要执行特定于平台的操作(即使需要,在Java中也通常可以使用平台开关来执行这些操作,或者为每个平台提供本机库)。如果您的应用程序很“简单”,您很可能不需要做任何特殊的处理。

  2. 如果您只需要更改注册表以进行自己的配置,请使用java.util.prefs.* (根据系统的不同,它们可能会将它们存储在注册表中)。没有内置的方法来访问注册表,因为并非每个系统都有注册表(也不需要)。

  3. 没有内置的方法来实现此目的,但可以使用其他框架。


2
  1. 不需要,只要您的应用程序是自包含的,就可以正常运行。
  2. 我不确定,我需要回去查看并进行编辑。 :-(
  3. Eclipse RCP框架使自动更新变得非常容易。

0

其他人已回答了1和3。我来尝试回答第2个问题。

在Java中没有内置的方法可以编辑注册表,这可能是因为Java被设计为可移植的,而注册表仅适用于Windows。

但是Windows有一个命令行程序“reg”,可以让您修改注册表,并且您可以使用Java调用命令行。


0

1) 是否需要编写不同的脚本来运行应用程序?我在很多情况下看到了run.sh和run.bat,用于启动应用程序。

2) 不确定,但我认为如果您想跨平台,应该避免使用注册表(Linux / OSX上没有注册表)。在Java应用程序中使用注册表并不常见...

3) 不知道

我还相信您正在提出三个不同的问题,管理员可能会帮助,但是如果您发布3个问题而不是一个问题,那不是更好吗?


0

现在1和3已经被相当全面地回答了

您可以使用http://sourceforge.net/projects/jregistrykey/库修改注册表,但对于初学者来说它相当复杂,如果您正在考虑跨平台应用程序,则没有必要进行这些更改,尽可能将设置保留在Java应用程序的本地。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接