Плохая версия Java при запуске плагина maven execJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Плохая версия Java при запуске плагина maven exec

Сообщение Anonymous »

Моя текущая версия Java — 7:

java -version
java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) Server VM (build 24.80-b11, mixed mode)


и у меня есть команда mvn8, где для java_home установлено значение 8:

mvn8 -version
Java HotSpot(TM) Server VM warning: ignoring option MaxPermSize=512m; support was removed in 8.0
Apache Maven 3.0.3 (r1075438; 2011-02-28 18:31:09+0100)
Maven home: /home/.../apache-maven-3.0.3
Java version: 1.8.0_66, vendor: Oracle Corporation
Java home: /home/.../jdk1.8.0_66/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.13.0-45-generic", arch: "i386", family: "unix"


А теперь проблема. Когда я запускаю один из своих профилей (есть плагин maven exec, который генерирует файлы) в проекте:

mvn8 exec:exec -P mo2ja -o


У меня есть исключение:

Java HotSpot(TM) Server VM warning: ignoring option MaxPermSize=512m; support was removed in 8.0
[INFO] Scanning for projects...
...
ERROR:java.time.LocalDateTime cannot be resolved to a type.
ERROR:java.time.LocalDate cannot be resolved to a type.
[ERROR] Command execution failed.
org.apache.commons.exec.ExecuteException: Process exited with an error: 2 (Exit value: 2)
at org.apache.commons.exec.DefaultExecutor.executeInternal(DefaultExecutor.java:404)
at org.apache.commons.exec.DefaultExecutor.execute(DefaultExecutor.java:166)
at org.codehaus.mojo.exec.ExecMojo.executeCommandLine(ExecMojo.java:764)
at org.codehaus.mojo.exec.ExecMojo.executeCommandLine(ExecMojo.java:711)
at org.codehaus.mojo.exec.ExecMojo.execute(ExecMojo.java:289)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:319)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
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:497)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)


Похоже, что моя система все еще использует Java. Почему, когда версия mvn печатает java8? Когда я меняю свою систему Java, все работает нормально. Это какая-то особенность maven или это может быть проблема с плагином, который я использую?

ОБНОВЛЕНИЕ:

когда я отлаживаю плагин maven exec, я вижу эту строку:

[DEBUG] Executing command line: java -classpath ... org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader -control definitions.model -models entity.model,dao.model -source src/main/resources -target src-gen


поэтому вопрос в том, как использовать ту же версию Java, что и mvn

вот мой профиль:< /p>


mo2ja


org.sqlproc.model
sqlmodel
runtime





org.codehaus.mojo
exec-maven-plugin

java
runtime

-classpath

org.sqlproc.model:sqlmodel
mysql:mysql-connector-java
org.sqlproc:sql-processor
org.slf4j:slf4j-api

org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader
-control
definitions.model
-models
entity.model,dao.model
-source
src/main/resources
-target
src-gen








Подробнее здесь: https://stackoverflow.com/questions/377 ... xec-plugin
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»