jboss中有不同类型的系统变量吗?

f45qwnt8  于 2023-10-20  发布在  其他
关注(0)|答案(1)|浏览(158)

在jboss-js我可以做的

[standalone@localhost:10990 /] /system-property=foo.bar:add(value=baz)
{"outcome" => "success"}

[standalone@localhost:10990 /] /system-property=foo.bar:read-resource
{
    "outcome" => "success",
    "result" => {"value" => "baz"}
}

我可以列出所有的系统变量,

[standalone@localhost:10990 /] /core-service=platform-mbean/type=runtime:read-attribute(name=system-properties)

其中之一是jboss. home. dir。我愿意:

[standalone@localhost:10990 /] /system-property=jboss.home.dir:read-resource
{
    "outcome" => "failed",
    "failure-description" => "WFLYCTL0216: Management resource '[(\"system-property\" => \"jboss.home.dir\")]' not foun
d",
    "rolled-back" => true
}

所以这是另一种系统变量?
我读到我可以做:

[standalone@localhost:10990 /] :resolve-expression(expression=${jboss.home.dir})
{
    "outcome" => "success",
    "result" => "D:\\dev\\eap_wildfly\\eap-7.4.0"
}

但这并没有回答我的问题。

p4tfgftt

p4tfgftt1#

system-property资源是一种设置系统属性或覆盖它们的方法。在某些情况下,根据访问系统属性的时间,该资源可能无法工作。
jboss.home.dir属性是始终从服务器设置的系统属性。您也不能在system-property资源中覆盖此设置。如果您这样做:

/system-property=jboss.home.dir:add(value=${jboss.home.dir})

命令将失败,并显示:

{
    "outcome" => "failed",
    "failure-description" => "WFLYSRV0115: System property jboss.home.dir cannot be set via the xml configuration file or from a management client; it's value must be known at initial process start so it can only set from the command line",
    "rolled-back" => true
}

但是,您可以在JAVA_OPTS环境变量中设置jboss.home.dir系统属性,或者通过命令行设置,如下所示:

$JBOSS_HOME/bin/standalone.sh -Djboss.home.dir=$JBOSS_HOME/

这并不是说有多种类型的系统属性,只是有多种方法来设置它们。某些属性,如jboss.home.dir或JVM所需的系统属性,不能在system-property配置资源中设置。但是,system-property配置只是设置系统属性,例如:System.setProperty(name, value)

相关问题