Intellij无法运行Wildfly服务器

时间:2017-04-03 13:30:39

标签: java linux intellij-idea wildfly

我正在尝试让Intellij IDEA与Wildfly 10服务器配合使用。我在this和Wildfly之后安装了Intellij,感谢this script

Intellij使用的启动脚本是/opt/wildfly-10.0.0.Final/bin/standalone.sh,我尝试手动运行,我收到以下错误:

    =========================================================================

  JBoss Bootstrap Environment

  JBOSS_HOME: /opt/wildfly

  JAVA: /usr/lib/jvm/java-1.8.0-openjdk-amd64/bin/java

  JAVA_OPTS:  -server -Xms64m -Xmx512m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true

=========================================================================

java.lang.IllegalArgumentException: Failed to instantiate class "org.jboss.logmanager.handlers.PeriodicRotatingFileHandler" for handler "FILE"
    at org.jboss.logmanager.config.AbstractPropertyConfiguration$ConstructAction.validate(AbstractPropertyConfiguration.java:116)
    at org.jboss.logmanager.config.LogContextConfigurationImpl.doPrepare(LogContextConfigurationImpl.java:335)
    at org.jboss.logmanager.config.LogContextConfigurationImpl.prepare(LogContextConfigurationImpl.java:288)
    at org.jboss.logmanager.config.LogContextConfigurationImpl.commit(LogContextConfigurationImpl.java:297)
    at org.jboss.logmanager.PropertyConfigurator.configure(PropertyConfigurator.java:546)
    at org.jboss.logmanager.PropertyConfigurator.configure(PropertyConfigurator.java:97)
    at org.jboss.logmanager.LogManager.readConfiguration(LogManager.java:514)
    at org.jboss.logmanager.LogManager.readConfiguration(LogManager.java:476)
    at java.util.logging.LogManager$3.run(LogManager.java:399)
    at java.util.logging.LogManager$3.run(LogManager.java:396)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.util.logging.LogManager.readPrimordialConfiguration(LogManager.java:396)
    at java.util.logging.LogManager.access$800(LogManager.java:145)
    at java.util.logging.LogManager$2.run(LogManager.java:345)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.util.logging.LogManager.ensureLogManagerInitialized(LogManager.java:338)
    at java.util.logging.LogManager.getLogManager(LogManager.java:378)
    at org.jboss.modules.Main.main(Main.java:482)
Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    at org.jboss.logmanager.config.AbstractPropertyConfiguration$ConstructAction.validate(AbstractPropertyConfiguration.java:114)
    ... 17 more
Caused by: java.io.FileNotFoundException: /opt/wildfly/standalone/log/server.log (Permission non accordée)
    at java.io.FileOutputStream.open0(Native Method)
    at java.io.FileOutputStream.open(FileOutputStream.java:270)
    at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
    at org.jboss.logmanager.handlers.FileHandler.setFile(FileHandler.java:151)
    at org.jboss.logmanager.handlers.PeriodicRotatingFileHandler.setFile(PeriodicRotatingFileHandler.java:102)
    at org.jboss.logmanager.handlers.FileHandler.setFileName(FileHandler.java:189)
    at org.jboss.logmanager.handlers.FileHandler.<init>(FileHandler.java:119)
    at org.jboss.logmanager.handlers.PeriodicRotatingFileHandler.<init>(PeriodicRotatingFileHandler.java:70)
    ... 22 more
java.util.concurrent.ExecutionException: Operation failed
    at org.jboss.threads.AsyncFutureTask.operationFailed(AsyncFutureTask.java:74)
    at org.jboss.threads.AsyncFutureTask.get(AsyncFutureTask.java:268)
    at org.jboss.as.server.Main.main(Main.java:103)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.jboss.modules.Module.run(Module.java:329)
    at org.jboss.modules.Main.main(Main.java:507)
Caused by: org.jboss.msc.service.StartException in service jboss.as: Failed to start service
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1904)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalStateException: WFLYDR0006: Directory /opt/wildfly/standalone/data/content is not writable
    at org.jboss.as.repository.ContentRepository$Factory$ContentRepositoryImpl.<init>(ContentRepository.java:188)
    at org.jboss.as.repository.ContentRepository$Factory.addService(ContentRepository.java:154)
    at org.jboss.as.server.ApplicationServerService.start(ApplicationServerService.java:146)
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
    ... 3 more

这与我在Intellij中的输出完全相同。

我感谢this topic,这可能是用户权限问题。

但是,当我尝试使用add-user.sh脚本将用户添加到wildfly时,出现此错误:./add-user.sh: 1: eval: /usr/lib/jvm/jdk1.8.0_60/bin/java: not found

正在寻找错误的JDK路径。我尝试按照不同的解决方案进行更改,但没有一个能够正常工作。

我的JAVA_HOME设置为/usr/lib/jvm/java-8-oracle

你们有谁知道该怎么办?提前谢谢你:)

1 个答案:

答案 0 :(得分:5)

忘记add-user.sh脚本。这是为了将用户添加到wildfly。您的问题出在您的Linux用户身上。

该目录必须可由任何用户运行的wildfly写入。

如果您以名为wildfly的用户身份运行它,则必须将这些目录的所有权更改为该用户。根据您的问题,您似乎正在运行其他用户,而这些用户对这些目录没有权限。

如果您想快速轻松修复并且您不担心系统中的其他用户,您只需更改以下权限:

sudo chmod -R 766 / opt / wildfly / standalone /

这将为所有者授予所有权限,并为其他用户提供对这些目录的读/写权限。

这不是最佳做法。最佳做法是将该目录所有权提供给用户&#39; wildfly&#39;权限为600.那么你应该将野生蝇作为“野生蝇”来运行。 linux上的用户。您可以找到的任何启动脚本都可能会为您执行此操作。