2017-04-03 129 views
1

我试图让Intellij IDEA与Wildfly 10服务器一起工作。我安装了Intellij this和Wildfly,感谢this scriptIntellij无法运行Wildfly服务器

通过的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

是否有人想知道该怎么做?预先感谢您:)

+0

日志说它不能创建.log文件。检查你的FS权限。 – dpassy

+0

就是这样,我以普通用户的身份运行脚本,wildfly目录主要由wildfly用户(其余为root)拥有。我引用的wildfly安装脚本设置了这些权限。 –

回答

2

忘记add-user.sh脚本。这是为了将用户添加到wildfly中。你的问题在于你的Linux用户。

无论用户wildfly运行的目录都必须是可写的。

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

如果你想快速简单的办法,你不担心你可以只改变一样的权限在系统上的其他用户:

须藤搭配chmod -R 766 /选择/ wildfly /单机/

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

这不是最佳实践。最佳做法是将该目录所有权授予具有600的权限的用户'wildfly'。然后,您应该在Linux上以'wildfly'用户的身份运行wildfly。任何你可以找到的启动脚本都可能为你做到这一点。

+0

非常感谢您的回答!我用我的用户和组更改了所有文件的所有权,用chown的--from选项替换了wildfly用户和组。尝试运行/opt/wildfly-10.0.0.Final/bin/standalone.sh时出现不同的错误: 12:36:41,491错误[org.jboss.msc.service.fail](MSC服务线程1 -8)MSC000001:启动服务失败jboss.undertow.listener.default:服务中的org.jboss.msc.service.StartException jboss.undertow.listener.default:无法启动http监听器 您是否知道这来自哪里? –

+0

我找到原因了,还有另一个实例在运行。现在我的项目出现了问题,但我不认为有任何关系,谢谢你的帮助! –