java - 如何修复此 .bat 文件以便它可以在 macOS 中运行?

标签 java macos shell batch-file

我创建了这个 .bat 文件,并且在 Windows 中完美运行。当我尝试从 macOS 终端运行此文件时,它显示一些错误。

我已经在我的 Mac 上安装了 JRE。我还补充道:

JAVA_HOME=/Library/Java/Home
export JAVA_HOME;

到我的 .profile 文件。所有需要的 jar 也位于 .bat 文件旁边的文件夹中。

这是 .bat 文件的内容:

shell
"%JAVA_HOME%\bin\java.exe" -cp .;libs/*;api-security-generator-0.0.1-SNAPSHOT.jar jatis.avantrade.security.securitygenerator.Main

我尝试从上面的代码中删除“java.exe”,但错误仍然出现。

我希望完美运行这个 .bat 文件。

最佳答案

在设置JAVA_HOME(在 macOS 上)时,最好使用

export JAVA_HOME=$(/usr/libexec/java_home)

在您的~/.profile内。您还可以使用 -v 选项选择您喜欢的任何版本。

要列出所有 JVM 安装,请调用:

/usr/libexec/java_home -V

要选择其中之一,请使用

export JAVA_HOME=$(/usr/libexec/java_home -v version)

然后就可以这样使用了

$JAVA_HOME/bin/java -cp .:libs/*:api-security-generator-0.0.1-SNAPSHOT.jar jatis.avantrade.security.securitygenerator.Main

将 .BAT 转换为 .sh

您还可以创建这样的包装脚本

#!/bin/bash
export JAVA_HOME=$(/usr/libexec/java_home)
$JAVA_HOME/bin/java -cp .:libs/*:api-security-generator-0.0.1-SNAPSHOT.jar jatis.avantrade.security.securitygenerator.Main

确保使其可执行

chmod +x script.sh

然后,您可以通过以下方式调用它

./script.sh

关于java - 如何修复此 .bat 文件以便它可以在 macOS 中运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56665646/

相关文章:

python - 如何选择要在 PyObjC 程序中运行的 Python 安装?

java - JPA 并发问题 "On release of batch it still contained JDBC statements"

java - 静态引用非静态字段Java错误

ios - 如何将 NSString 放入具有多个参数的 NSLog

bash - 在 shell 脚本中添加计数器

linux - 通过在 linux 中删除 url 参数来重命名文件

shell - 在 unix 变量中获取 Teradata BTEQ 查询结果

java - 如何获取java中共享点项目的listItemId值

java - 如何在 JFreeChart 烛台图中将主体和边框颜色设置为相同

objective-c - NSApplication endSheet : has no effect