Wildfly。 FileNotFoundException(访问被拒绝)

时间:2016-05-02 14:46:00

标签: java maven wildfly

我有一个新项目,我想从Maven运行Wildfly。 命令:mvn wildfly:run

我想要发生的事情是,maven会将我的项目打包到WAR文件,启动Wildfly,然后部署它。

问题是它第一次运行时有效。它正在下载Wildfly,构建和部署POM文件。 如果我停止Wildfly,并使用相同的命令再次启动它,我会得到一个FileNotFoundException和Access被拒绝的消息(见下文)。奇怪的是,我将这个小项目从另一台计算机上复制过来,它一直在那里工作。我也尝试制作一个新项目,但仍然遇到同样的错误。

例外:

  

[INFO]   -------------------------------------------------- ---------------------- [INFO] BUILD FAILURE [INFO]   -------------------------------------------------- ---------------------- [INFO]总时间:53.197 s [INFO]完成于:   2016-05-02T16:23:11 + 02:00 [INFO]最终记忆:19M / 212M [INFO]   -------------------------------------------------- ---------------------- [错误]无法执行目标   org.wildfly.plugins:wildfly - Maven的插件:1.1.0.Alpha7:运行   项目new-test上的(default-cli):服务器无法启动:   部署失败:操作失败:{" WFLYCTL0062:复合   操作faile d并被回滚。失败的步骤:" =>   {"操作步骤-2" => {" WFLYCTL0080:服务失败" =>   {" jboss.undertow.deployment.default-server.default-host./pg" =>   服务jboss.undert中的#g; org.jboss.msc.service.StartException   ow.deployment.default-server.default-host./pg:   java.lang.RuntimeException:java.lang.RuntimeException:   com.sun.faces.config.ConfigurationException:   java.util.concurrent.ExecutionException:javax.faces.FacesException:   java.io.File NotFoundException:D:\ Skole \ New   文件夹\目标\ wildfly运行\ wildfly-10.0.0.Final \独立\ tmp目录\ VFS \ TEMP \ tempf818abf44afbab25 \内容393c76ecb03dd1d6 \内容30131585882030325.tmp   (访问被拒绝)[错误]引起:java.lang.RuntimeException:   了java.lang.RuntimeException:   com.sun.faces.config.ConfigurationException:   java.util.concurrent.ExecutionException:javax.faces.FacesException:   java.io.FileNotFoundException:D:\ Skole \ New   文件夹\目标\ wildfly运行\ wildfly-10.0.0.Final \独立\ tmp目录\ VFS \ TEMP \ tempf818abf44afbab25 \内容393c76ecb03dd1d6 \内容30131585882030325.tmp   (访问被拒绝)[错误]引起:java.lang.RuntimeException:   com.sun.faces.config.ConfigurationException:   java.util.concurrent.ExecutionException:javax.faces.FacesException:   java.io.FileNotFoundException:D:\ Skole \ New folder \ target \ wildfl   Y型运行\ wildfly-10.0.0.Final \独立\ tmp目录\ VFS \ TEMP \ tempf818abf44afbab25 \内容393c76ecb03dd1d6 \内容30131585882030325.tmp   (访问被拒绝)[错误]引起:   com.sun.faces.config.ConfigurationException:   java.util.concurrent.ExecutionException:javax.faces.FacesException:   java.io.FileNotFoundException:D:\ Skole \ New   文件夹\目标\ wildfly运行\ wildfly-10.0.0.Final \   \独立\ tmp目录\ VFS \ TEMP \ tempf818abf44afbab25 \内容393c76ecb03dd1d6 \内容30131585882030325.tmp   (访问被拒绝)[错误]引起:   java.util.concurrent.ExecutionException:javax.faces.FacesException:   java.io.FileNotFoundException:D:\ Skole \ New   文件夹\目标\ wildfly运行\ wildfly-10.0.0.Final \独立\ tmp目录\ VFS \ TEMP \ tempf818abf44afb   ab25 \ content-393c76ecb03dd1d6 \ content-30131585882030325.tmp(Access   被拒绝)[错误]引起:javax.faces.FacesException:   java.io.FileNotFoundException:D:\ Skole \ New   文件夹\目标\ wildfly运行\ wildfly-10.0.0.Final \独立\ TMP \ VFS \ TEMP \ tempf818abf44afbab25 \内容393c76ecb03dd1d6 \内容-3-   0131585882030325.tmp(访问被拒绝)[错误]引起:java.io.FileNotFoundException:D:\ Skole \ New   文件夹\目标\ wildfly运行\ wildfly-10.0.0.Final \独立\ tmp目录\ VFS \ TEMP \ tempf818abf44afbab25 \内容393c76ecb03dd1d6 \内容30131585882030325.tmp   (访问被拒绝)"}}}} [错误] - > [帮助1] [错误] [错误]要查看   错误的完整堆栈跟踪,使用-e开关重新运行Maven。   [ERROR]使用-X开关重新运行Maven以启用完整的调试日志记录。   [ERROR] [ERROR]有关错误和可能的更多信息   解决方案,请阅读以下文章:[错误] [帮助1]   http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

POM文件:

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

http://maven.apache.org/xsd/maven-4.0.0.xsd">     4.0.0

<groupId>new.test</groupId>
<artifactId>new-test</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>


<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.jboss.spec</groupId>
            <artifactId>jboss-javaee-7.0</artifactId>
            <version>1.0.3.Final</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

<dependencies>
    <dependency>
        <groupId>org.eclipse.persistence</groupId>
        <artifactId>org.eclipse.persistence.moxy</artifactId>
        <version>2.5.0</version>
    </dependency>

    <dependency>
        <groupId>javax</groupId>
        <artifactId>javaee-api</artifactId>
        <version>7.0</version>
        <scope>provided</scope>
    </dependency>

    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.12</version>
        <scope>test</scope>
    </dependency>

    <dependency>
        <groupId>org.glassfish.main.extras</groupId>
        <artifactId>glassfish-embedded-all</artifactId>
        <version>4.1.1</version>
        <scope>test</scope>
    </dependency>


    <!-- JEE for WildFly -->
    <dependency>
        <groupId>org.jboss.spec.javax.faces</groupId>
        <artifactId>jboss-jsf-api_2.2_spec</artifactId>
    </dependency>
    <dependency>
        <groupId>org.jboss.spec.javax.ejb</groupId>
        <artifactId>jboss-ejb-api_3.2_spec</artifactId>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>org.hibernate.javax.persistence</groupId>
        <artifactId>hibernate-jpa-2.1-api</artifactId>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>javax.enterprise</groupId>
        <artifactId>cdi-api</artifactId>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>org.jboss.spec.javax.annotation</groupId>
        <artifactId>jboss-annotations-api_1.2_spec</artifactId>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>org.jboss.spec.javax.servlet</groupId>
        <artifactId>jboss-servlet-api_3.1_spec</artifactId>
        <scope>provided</scope>
    </dependency>
</dependencies>

<build>

    <finalName>pg</finalName>


    <plugins>


        <plugin>
            <groupId>org.wildfly.plugins</groupId>
            <artifactId>wildfly-maven-plugin</artifactId>
            <version>1.1.0.Alpha7</version>
            <configuration>
                <add-user>
                    <users>
                        <user>
                            <username>admin</username>
                            <password>admin</password>
                        </user>
                    </users>
                </add-user>
            </configuration>
        </plugin>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>

    </plugins>
</build>

有人有什么想法吗?我在两台计算机上运行Windows 10。

4 个答案:

答案 0 :(得分:1)

如果您有配置,请将其从配置中移除

<extension module="org.jboss.as.jsf"/>  



<subsystem xmlns="urn:jboss:domain:jsf:1.0"/>  

答案 1 :(得分:1)

读取堆栈跟踪真的很难,但看起来启动WildFly的用户没有对WildFly安装的正确访问权限。用户需要读/写访问权。

<scope>provided</scope>也应为<dependency> <groupId>org.jboss.spec.javax.faces</groupId> <artifactId>jboss-jsf-api_2.2_spec</artifactId> <scope>provided</scope> </dependency>

{ field: "Amount", title: "Balance", format: "{0:c}", attributes: { style: "text-align: right;" }, template: "<font class='#if(Amount < 0) {# negative_field #} else {# positive_field #}'></font>" },

答案 2 :(得分:0)

供将来参考:

我尝试从配置文件中删除这些行:

permanent

我从<extension module="org.jboss.as.jsf"/> <subsystem xmlns="urn:jboss:domain:jsf:1.0"/> 删除了它们。 这似乎没有帮助。

我还将项目从Standalone/configuration/standalone.xml移到D:。它似乎工作了一些时间。但有时我也得到了错误消息。但值得一试,如果有人遇到同样的问题。

我认为它的工作原理是通过修复我的POM文件,正如在接受的答案中所建议的那样。 我不知道是否只有这一点才能修复它,但我想是的。

如果某人有同样的问题,并且POM文件缺少范围,那么我建议删除wildfly,并在修复POM文件后让maven再次安装它。

答案 3 :(得分:0)

请在这篇文章中查看Filipe P Goes的回答: Wildfly fails to deploy application (FileNotFoundException - Access is Denied) 只需将wildfly文件夹添加到windows antivirus / defender

的排除列表中