2016-07-22 7 views
2

я получаю следующую ошибку муравья в консоли во время работы причала: команда прекратить использование МВЕН задач,Разрешения (java.lang.RuntimePermission exitVM) не было предоставлено временем выполнения пристани остановки с Maven Ant Task

[artifact:mvn] org.apache.tools.ant.ExitException: Permission (java.lang.RuntimePermission exitVM) was not granted. 
[artifact:mvn] at org.apache.tools.ant.types.Permissions$MySM.checkExit(Permissions.java:196) 
[artifact:mvn] at java.lang.Runtime.exit(Runtime.java:88) 
[artifact:mvn] at java.lang.System.exit(System.java:904) 
[artifact:mvn] at org.codehaus.classworlds.Launcher.main(Launcher.java:376) 
[artifact:mvn] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
[artifact:mvn] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
[artifact:mvn] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
[artifact:mvn] at java.lang.reflect.Method.invoke(Method.java:597) 
[artifact:mvn] at org.apache.tools.ant.taskdefs.ExecuteJava.run(ExecuteJava.java:217) 
[artifact:mvn] at org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:152) 
[artifact:mvn] at org.apache.tools.ant.taskdefs.Java.run(Java.java:764) 
[artifact:mvn] at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:218) 
[artifact:mvn] at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:132) 
[artifact:mvn] at org.apache.tools.ant.taskdefs.Java.execute(Java.java:105) 
[artifact:mvn] at org.apache.maven.artifact.ant.Mvn.execute(Mvn.java:81) 
[artifact:mvn] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) 
[artifact:mvn] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
[artifact:mvn] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
[artifact:mvn] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
[artifact:mvn] at java.lang.reflect.Method.invoke(Method.java:597) 
[artifact:mvn] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 
[artifact:mvn] at org.apache.tools.ant.Task.perform(Task.java:348) 
[artifact:mvn] at org.apache.tools.ant.Target.execute(Target.java:357) 
[artifact:mvn] at org.apache.tools.ant.Target.performTasks(Target.java:385) 
[artifact:mvn] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337) 
[artifact:mvn] at org.apache.tools.ant.Project.executeTarget(Project.java:1306) 
[artifact:mvn] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) 
[artifact:mvn] at org.apache.tools.ant.Project.executeTargets(Project.java:1189) 
[artifact:mvn] at org.apache.tools.ant.Main.runBuild(Main.java:758) 
[artifact:mvn] at org.apache.tools.ant.Main.startAnt(Main.java:217) 
[artifact:mvn] at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257) 
[artifact:mvn] at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104) 

В поисках за эту ошибку, я получил аналогичные должности,

https://stackoverflow.com/a/8588201/1793718

https://issues.apache.org/jira/browse/MANTTASKS-201

https://readthefuckingmanual.net/error/1010/

предполагает установление fork="true" бы решить эту проблему, но я получаю эту ошибку, когда уже моя вилка установлена ​​истина (или даже ложно)

Ниже мой муравей цель для вызова сервера пристани остановки,

<target name="jetty-stop" fork="true"> 
    <artifact:mvn mavenHome="${maven.home}"> 
     <jvmarg value="-Xmx1024m" /> 
     <arg value="jetty:stop"/> 
    </artifact:mvn> 
</target> 

Update:

Я также заметил, сообщения об ошибках при инициализации C3P0 же, как указано в этом вопросе,

java.security.AccessControlException when using Ant, but runs ok when invoking java from console

при запуске сервера с помощью следующей муравей-задачи,

<target name="jetty-start-jdk8"> 
    <delete dir="war/WEB-INF/lib"/> 
    <artifact:mvn mavenHome="${maven.home}" fork="true"> 
     <jvmarg value="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8000" /> 
     <jvmarg value="-javaagent:${jrebel.path}" /> 
     <jvmarg value="-Xbootclasspath/p:C:/Users/admin/AppData/Local/Temp//rebelboot.jar" /> 
     <arg value="compile"/> 
     <arg value="war:exploded"/> 
     <arg value="jetty:run"/> 
    </artifact:mvn> 
</target> 

выше пост также предлагает установить fork="true", чтобы решить эту проблему. Но это уже верно. Что может быть здесь?

ответ

2

Решение:

Использование JDK вместо JRE в пути сборки.

Проблема заключалась в том, что мой проект был сконфигурирован в eclipse с JRE вместо JDK, а build.xml собирал мою конфигурацию проекта, которая является JRE. По некоторым причинам запуск муравьиных задач с помощью JRE в качестве вашей системной библиотеки. Переход на JDK 1.8 решил проблему. После изменения пути сборки удалите Build.XML из Ant View и снова добавьте его для запуска задач.