在 wildfly 8.2 的 standalone-full.xml 中设置系统属性

Set system properties in standalone-full.xml in wildfly 8.2

我在standalone-full.xml中添加了system-properties标签,但它不能在standalone模式下工作。但是,如果我在 domain.xml 中添加相同的标签,它适用于域模式。

<?xml version='1.0' encoding='UTF-8'?>

<server xmlns="urn:jboss:domain:2.2">

    <extensions>
    ....
    </extensions>

    <system-properties>
        <property name="java.util.Arrays.useLegacyMergeSort" value="true"/>
    </system-properties>
</server>

根据this article on jBoss General configuration concepts

System property values can be set in a number of places in domain.xml, host.xml and standalone.xml.

那么standalone-full.xml呢?

我不想通过命令行设置它,甚至不想在 java 代码中设置它。

在独立的情况下,在配置文件中设置它可能为时已晚。您需要将其添加到 JAVA_OPTS 环境变量中的 standalone.confstandalone.conf.bat。在任何其他尝试使用 java.util.Arrays.

之前,需要设置像这样的全局 属性

对于 Wildfly 10,它仍然可以工作。我能够读取 属性 以包含一些属性的 standalone-full.xml 开始的实例。

我猜手册一定是过时了?因为即使 Wildfly 本身在使用 Wildfly 管理 web 界面时也会在 standalone-full.xml 中插入一个新的 属性:http://localhost:9990 > Configuration > System Properties(Wildfly 当然会添加 属性到用于启动实例的 xml 配置)。这对我来说已经足够了。

如果您使用独立 full.xml 而不是 standalone.xml(默认值)启动 Wildfly 服务器,那么这应该反映在服务器的启动中:

standalone.sh -b <hostIP> -c standalone-full.xml -Dorg...

那么这将在第一次启动时生效。

如果您更改此配置文件中的某些内容,您将需要从 jboss cli:

重新加载 Wildfly(配置)
[standalone@localhost:9990 /] :reload