将用户添加到 WildFly 服务器会导致错误



我正在尝试将用户添加到WildFly服务器,但收到错误:

./add-user.sh: 1: eval:/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java/bin/java: 未找到

我想我需要更改.conf文件中的JAVA_HOME位置,但在wildfly/bin目录的.conf文件中这样做了。如何解决此问题?

add-user.sh脚本没有源任何配置文件,因此您必须通过环境提供 Java 二进制文件。

您可以通过多种方式执行此操作:

  • 通过指向java可执行文件的JAVA变量:

    export JAVA=/path/to/jdk_install/bin/java
    ./add-user.sh [...]
    
  • 通过指向 Java 安装目录的JAVA_HOME变量:

    export JAVA_HOME=/path/to/jdk_install/
    ./add-user.sh [...]
    
  • 通过将 Java 的安装bin目录包含在您的PATH中:

    export PATH="/path/to/jdk_install/bin:$PATH"
    ./add-user.sh [...]
    

请注意,这些可能会因 WildFly 或 JBoss EAP 版本而异;我从阅读wildfly-8.1.0.Final安装的脚本中收集了这些内容。
如果您不确定这是否适用于您自己的版本,并且如果您对 shell 脚本有最基本的了解,您应该检查您自己的脚本:它们只有几十行长,并且注释很好。

你的 java 路径是错误的。 您可以观察到在下面的行中有额外的"/bin/java"。您应该删除它。

./add-user.sh: 1: eval:/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java/bin/java: 未找到

为此,请在 adduser.sh/.bat 文件中替换

# Setup the JVM
if [ "x$JAVA" = "x" ]; then
if [ "x$JAVA_HOME" != "x" ]; then
JAVA="$JAVA_HOME/bin/java"
else
JAVA="java"
fi
fi

# Setup the JVM
if [ "x$JAVA" = "x" ]; then
if [ "x$JAVA_HOME" != "x" ]; then
JAVA="$JAVA_HOME"
else
JAVA="java"
fi
fi

这对我来说是魔术。

相关内容

最新更新