Mac OS 无法 运行 .Jar 文件
Mac OS unable to run .Jar file
所以我一直在写这个小代码,而且它有效——但我必须输入整个 Computer;~ User$ java MyProject
并且每次都更改路径,所以我决定把它放在 .jar
文件(这样我就可以 运行 双击它)。我是 运行ning macos 上的 Intellij 用户。我创建了 File/Project Structure/artifacts/+/myMain
等文件,现在我的桌面上有一个 .jar
文件。当我 运行 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
^^Resolved - 使用 chmod 755 MyProject.jar
命令,查看评论了解更多详情
或 运行 使用 Jar 启动器右键单击它我得到 The Java JAR file "MyProject.jar" could not be launched. Check the Console for possible error messages.
控制台中没有错误消息。
在任何人说之前,我有 Java 13,项目正在 运行ning Java 13 -- 这是我的计算机的默认设置,并且已经更新自安装后自动。
我怎样才能启动这个文件,什么可以阻止它这样做?
在终端中,执行
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 中单击,应该会启动。
如果您的程序没有 GUI 但需要控制台输入,您应该 运行 从终端而不是双击它。当您双击 MyProject.jar
文件时,实际上是通过 jar 启动器启动它。 jar 启动器会将文件传递给 JVM。但是,由于您不是从终端启动它,JVM 不知道使用哪个终端,因此程序可能无法正确执行。
所以我一直在写这个小代码,而且它有效——但我必须输入整个 Computer;~ User$ java MyProject
并且每次都更改路径,所以我决定把它放在 .jar
文件(这样我就可以 运行 双击它)。我是 运行ning macos 上的 Intellij 用户。我创建了 File/Project Structure/artifacts/+/myMain
等文件,现在我的桌面上有一个 .jar
文件。当我 运行 Intellij 中的 jar,或 运行 使用
java -jar /Users/Me/Desktop/MyProject/out/artifacts/MyProject_jar/MyProject.jar
,效果很好
然而,当我:
运行 从终端
java -jar MyProject.jar
我得到Error: Unable to access jarfile MyProject.jar
^^Resolved - 使用chmod 755 MyProject.jar
命令,查看评论了解更多详情或 运行 使用 Jar 启动器右键单击它我得到
The Java JAR file "MyProject.jar" could not be launched. Check the Console for possible error messages.
控制台中没有错误消息。
在任何人说之前,我有 Java 13,项目正在 运行ning Java 13 -- 这是我的计算机的默认设置,并且已经更新自安装后自动。
我怎样才能启动这个文件,什么可以阻止它这样做?
在终端中,执行
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 中单击,应该会启动。
如果您的程序没有 GUI 但需要控制台输入,您应该 运行 从终端而不是双击它。当您双击 MyProject.jar
文件时,实际上是通过 jar 启动器启动它。 jar 启动器会将文件传递给 JVM。但是,由于您不是从终端启动它,JVM 不知道使用哪个终端,因此程序可能无法正确执行。