【发布时间】:2011-10-20 10:21:23
【问题描述】:
我正在 NetBeans 中编写一个简单的 Swing 应用程序,并且是第一次在 Ubuntu 机器上这样做。
众所周知,NetBeans 会自动为“设置为主”的项目创建可执行 JAR。
在 Windows 上,您可以双击可执行 JAR,它会自动调用 JRE 并运行应用程序。在 Ubuntu 中,双击 .jar 文件会导致文件在存档管理器中打开。为了运行我的 JAR,我要么必须右键单击它并选择“使用 OpenJDK Java 6 运行时打开”,要么从命令行启动它。
从命令行我没有遇到任何问题。 但是,当我尝试从右键菜单启动它时,我收到一条错误消息:
文件 MySwingApp.jar 未标记为可执行文件...
所以我有两个问题:
- 如何将其设置为可执行文件?这是我可以在 NB 内做的事情还是我必须使用外壳?如果我必须通过 shell 设置权限,这是否与 NB 的自动生成 **executable** JARS 的政策冲突?无论如何我会使用什么命令来翻转可执行位?!?!
- 这只是 Linux 的一个小问题吗?我想将此 JAR 发送给运行 Windows 的朋友,我希望他们能够双击它并启动程序
感谢您提供任何有用的建议!
【问题讨论】:
-
“标记为可执行”意味着您需要在其上添加一个 x 位。在终端使用“chmod +x MySwingApp.jar” cd'ing 到它的位置。
-
谢谢!但是我的其他问题呢?这是我每次编译或创建的每个 JAR 都必须做的事情吗?我给我 JAR 的 Windows 用户呢?
-
如果你将你的jar文件标记为可执行文件,你可以双击它并运行它吗?
-
不双击它仍然会打开存档管理器,但现在我可以右键单击它并选择使用 JRE 打开它,并且不会引发错误...**然而**在我进行干净构建(创建一个新的 JAR 文件)并尝试右键单击访问它的那一刻,我又回到了同样的问题,并且必须对 x-bit 进行 chmod ...
-
这不是 Linux 打嗝。这就是 Unix 的工作方式。
标签: java linux netbeans ubuntu executable-jar