Mac OS无法运行.Jar文件

时间:2020-04-24 19:19:09

标签: java macos jar

因此,我一直在编写这段小代码,并且可以正常工作-但我必须键入整个Computer;~ User$ java MyProject并每次都更改路径,所以我决定将其粘贴在{{1}中}文件(因此我可以双击运行它)。我是运行macOS的Intellij用户。我创建了文件.jar等,现在在我的桌面上有一个File/Project Structure/artifacts/+/myMain文件。当我在Intellij内部运行jar时,或使用

.jar,效果很好。

但是,当我:

  • 使用java -jar /Users/Me/Desktop/MyProject/out/artifacts/MyProject_jar/MyProject.jar从终端运行它,我得到java -jar MyProject.jar ^^已解决-使用 Error: Unable to access jarfile MyProject.jar 命令,查看注释以获取更多详细信息

  • 或者用Jar启动器右键单击它运行,我得到chmod 755 MyProject.jar控制台中没有错误消息。

在有人说之前,我有Java 13,并且该项目正在Java 13上运行-这是我计算机的默认设置,并且自安装以来已自动更新。

我将如何启动该文件,又有什么办法阻止它呢?

2 个答案:

答案 0 :(得分:0)

在终端中,进行

ls -l MyProject.jar

您会看到类似的内容:

-rw-r--r-- 1 youruser yourgroup 1024 Apr 24 15:41 MyProject.jar

-rw-r--r--部分是文件许可权,其中“ r”表示可读,“ w”表示可写,而“ x”表示可执行,但是如您所见一个在那里。无需赘述,使用chmod命令通过执行

使文件可执行。
chmod 755 MyProject.jar

然后,使用相同的ls命令,您应该在权限字段中看到-rwxr-xr-x。现在,该文件(任何人都可以执行),并且如果您在Finder中单击,应该会启动。

答案 1 :(得分:0)

如果您的程序没有GUI但需要控制台输入,则应从终端运行它,而不是双击它。双击MyProject.jar文件时,实际上是通过jar启动器启动它的。 jar启动器会将文件传递给JVM。但是,由于您不是从终端启动它,因此JVM不知道要使用哪个终端,因此该程序可能无法正确执行。