升级到 JDK 8 后,maven surefire 测试失败
maven surefire test failed after upgrade to JDK 8
我有多个模块项目。我所有的测试都是在 JDK 7 下通过的。但是当我升级到 JDK 8 时,maven surefire 运行 两次(它 运行 在 JDK 7 中两次出色地)。第一个测试通过,但第二个测试失败。
我试过升级最新的 sure-fire 但没有成功。
有人知道如何解决这个问题吗?
parent.pom
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.2</version>
<configuration>
<fork>true</fork>
<source>${source.level}</source>
<target>${target.level}</target>
<testSource>${source.level}</testSource>
<testTarget>${target.level}</testTarget>
<showWarnings>true</showWarnings>
<showDeprecation>true</showDeprecation>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.18.1</version>
<configuration>
<argLine>-Xms512m -Xmx1024m
</argLine>
</configuration>
</plugin>
<!--This plugin's configuration is used to store Eclipse m2e settings
only. It has no influence on the Maven build itself. -->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>
org.apache.maven.plugins
</groupId>
<artifactId>
maven-antrun-plugin
</artifactId>
<versionRange>
[1.3,)
</versionRange>
<goals>
<goal>run</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
模块 1
<build>
<pluginManagement>
<plugins>
<!--This plugin's configuration is used to store Eclipse m2e settings
only. It has no influence on the Maven build itself. -->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<versionRange>[1.0,)</versionRange>
<goals>
<goal>run</goal>
</goals>
</pluginExecutionFilter>
<action>
<execute />
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<id>generate-sources</id>
<phase>generate-sources</phase>
<configuration>
<tasks>
<mkdir dir="target/generated-sources" />
<exec executable="${protoc.executable}">
<arg value="--java_out=target/generated-sources" />
<arg value="--proto_path=${basedir}/../messdefn/" />
<arg value="${basedir}/../messdefn/messdefn.proto" />
</exec>
</tasks>
<sourceRoot>target/generated-sources</sourceRoot>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<dependencies>
<dependency>
<groupId>org.apache.maven.surefire</groupId>
<artifactId>surefire-junit47</artifactId>
<version>2.12.3</version>
</dependency>
</dependencies>
<configuration>
<excludedGroups>com.company.test.IntegrationTest</excludedGroups>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.9.1</version>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>${project.build.directory}/generated-sources</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<testResources>
<testResource>
<directory>src/test/resources</directory>
<includes>
<include>log4j.xml</include>
<include>dnp3_devices.ns</include>
<include>application.properties</include>
<include>unitils.properties</include>
<include>dbscripts/*.sql</include>
<include>applicationContext-test.xml</include>
<include>ehcache.xml</include>
</includes>
</testResource>
<testResource>
<directory>src/main/resources</directory>
<excludes>
<exclude>log4j.xml</exclude>
</excludes>
</testResource>
<!-- add the data file (*.xml) for unitils -->
<testResource>
<directory>${project.basedir}/src/test/java</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</testResource>
</testResources>
</build>
<profiles>
<profile>
<id>jenkins</id>
<activation>
<property>
<name>env.IS_CI_BUILD</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<version>2.5.2</version>
<configuration>
<instrumentation>
<ignores>
<ignore>com.company.protobuf.message.*</ignore>
</ignores>
<excludes>
<exclude>com/company/protobuf/message/**/*.class</exclude>
</excludes>
</instrumentation>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<includes>
<include>**/*Test.java</include>
<include>**/*ITCase.java</include>
</includes>
<excludedGroups>com.company.core.IgnoreITCase</excludedGroups>
<systemProperties>
<DB_BUILD_USER>${env.DB_BUILD_USER}</DB_BUILD_USER>
<TWO_TASK>${env.TWO_TASK}</TWO_TASK>
</systemProperties>
</configuration>
<executions>
<execution>
<id>integration-test</id>
<phase>integration-test</phase>
<goals>
<goal>test</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
这是 Maven 结果
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] top-level Maven project
[INFO] core Java library
[INFO] web application (presentation)
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building NS top-level Maven project 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ parent ---
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building NS core Java library 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ ns-core ---
[INFO] Deleting /home/bli/ns/tun-0018-New/BASE_STATION/java/target
[INFO]
[INFO] --- maven-antrun-plugin:1.8:run (generate-sources) @ ns-core ---
[INFO] Executing tasks
main:
[mkdir] Created dir: /home/bli/ns/tun-0018-New/BASE_STATION/java/target/generated-sources
[INFO] Executed tasks
[INFO] Registering compile source root /home/bli/ns/tun-0018-New/BASE_STATION/java/target/generated-sources
[INFO]
[INFO] --- build-helper-maven-plugin:1.9.1:add-source (add-source) @ ns-core ---
[INFO] Source directory: /home/bli/ns/tun-0018-New/BASE_STATION/java/target/generated-sources added.
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ ns-core ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 5 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.2:compile (default-compile) @ ns-core ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 335 source files to /home/bli/ns/tun-0018-New/BASE_STATION/java/target/classes
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ ns-core ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 5 resources
[INFO] Copying 5 resources
[INFO] Copying 2 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.2:testCompile (default-testCompile) @ ns-core ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 43 source files to /home/bli/ns/tun-0018-New/BASE_STATION/java/target/test-classes
[INFO]
[INFO] --- maven-surefire-plugin:2.18.1:test (default-test) @ ns-core ---
[INFO] Surefire report directory: /home/bli/ns/tun-0018-New/BASE_STATION/java/target/surefire-reports
[INFO] Using configured provider org.apache.maven.surefire.junitcore.JUnitCoreProvider
[INFO] parallel='none', perCoreThreadCount=true, threadCount=0, useUnlimitedThreads=false, threadCountSuites=0, threadCountClasses=0, threadCountMethods=0, parallelOptimized=true
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running com.company.core.shared.dto.MeterReadingPpDtoTest
Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec - in com.company.core.shared.dto.MeterReadingPpDtoTest
Running com.company.core.shared.db.DbUtilsTest
Tests run: 9, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec - in com.company.core.shared.db.DbUtilsTest
Running com.company.core.shared.SinglePhaseMeterReadingDtoTest
Tests run: 13, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.083 sec - in com.company.core.shared.SinglePhaseMeterReadingDtoTest
Running com.company.core.shared.utils.EnvironmentTest
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.003 sec - in com.company.core.shared.utils.EnvironmentTest
Running com.company.core.shared.utils.DateUtilsTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.007 sec - in com.company.core.shared.utils.DateUtilsTest
Running com.company.core.shared.utils.NsPropertyFileTest
Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.005 sec - in com.company.core.shared.utils.NsPropertyFileTest
Running com.company.core.shared.utils.ConversionsTest
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec - in com.company.core.shared.utils.ConversionsTest
Running com.company.core.shared.utils.NsConfigurationTest
Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.006 sec - in com.company.core.shared.utils.NsConfigurationTest
Running com.company.core.springutil.tunPropertyPlaceholderConfigurerTest
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.258 sec - in com.company.core.springutil.tunPropertyPlaceholderConfigurerTest
Running com.company.core.springutil.tunApplicationContextTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.013 sec - in com.company.core.springutil.tunApplicationContextTest
Running com.company.core.springutil.ApplicationContextProviderTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.034 sec - in com.company.core.springutil.ApplicationContextProviderTest
Running com.company.core.common.dao.NetworkDeviceDaoTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.221 sec - in com.company.core.common.dao.NetworkDeviceDaoTest
Running com.company.core.common.dao.dto.CategorySelectListEntryDtoTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec - in com.company.core.common.dao.dto.CategorySelectListEntryDtoTest
Running com.company.core.common.dao.model.ErtDeviceTest
Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.009 sec - in com.company.core.common.dao.model.ErtDeviceTest
Running com.company.core.common.dao.model.MeterDeviceTest
Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.007 sec - in com.company.core.common.dao.model.MeterDeviceTest
Running com.company.core.common.dao.model.ErtReadingTest
Tests run: 14, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.018 sec - in com.company.core.common.dao.model.ErtReadingTest
Running com.company.core.common.dao.model.ProductTest
Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.027 sec - in com.company.core.common.dao.model.ProductTest
Running com.company.core.common.dao.impl.jdbc.SystemCodeDaoJdbcTest
Tests run: 21, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.323 sec - in com.company.core.common.dao.impl.jdbc.SystemCodeDaoJdbcTest
Running com.company.core.common.hibernate.type.UtcTimestampTypeTest
Tests run: 18, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.019 sec - in com.company.core.common.hibernate.type.UtcTimestampTypeTest
Running com.company.core.common.service.impl.NetworkUserServiceImplTest
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.005 sec - in com.company.core.common.service.impl.NetworkUserServiceImplTest
Running com.company.core.common.model.StatusInfoTest
Tests run: 7, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec - in com.company.core.common.model.StatusInfoTest
Running com.company.core.common.UtilsTest
Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.005 sec - in com.company.core.common.UtilsTest
Running com.company.core.meter.configuration.service.impl.ErtDeviceConfigurationServiceImplTest
Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.028 sec - in com.company.core.meter.configuration.service.impl.ErtDeviceConfigurationServiceImplTest
Running com.company.core.meter.configuration.service.impl.MeterConfigurationServiceImplTest
Tests run: 12, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.029 sec - in com.company.core.meter.configuration.service.impl.MeterConfigurationServiceImplTest
Running com.company.core.meter.reading.dao.tunMeterReadingDaoTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.01 sec - in com.company.core.meter.reading.dao.tunMeterReadingDaoTest
Running com.company.core.meter.reading.dao.hibernate.InitiateReadingDaoHibernateTest
Tests run: 7, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.396 sec - in com.company.core.meter.reading.dao.hibernate.InitiateReadingDaoHibernateTest
Running com.company.core.meter.reading.dao.jdbc.DeviceReadingDaoJdbcTest
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.112 sec - in com.company.core.meter.reading.dao.jdbc.DeviceReadingDaoJdbcTest
Running com.company.core.meter.request.impl.InitiateReadingServiceImplTest
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.009 sec - in com.company.core.meter.request.impl.InitiateReadingServiceImplTest
Running com.company.core.vrapp.model.Dnp3ConfigurationTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.002 sec - in com.company.core.vrapp.model.Dnp3ConfigurationTest
Running com.company.core.vrapp.model.AverageDemandTest
Tests run: 7, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec - in com.company.core.vrapp.model.AverageDemandTest
Running com.company.core.vrapp.model.VrDeviceTest
Tests run: 21, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.116 sec - in com.company.core.vrapp.model.VrDeviceTest
Running com.company.core.messaging.rmq.impl.ReflectionTest
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec - in com.company.core.messaging.rmq.impl.ReflectionTest
Running com.company.core.messaging.rmq.impl.RmqBrokerConfigTest
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec - in com.company.core.messaging.rmq.impl.RmqBrokerConfigTest
Running com.company.core.messaging.rmq.impl.UtilsTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec - in com.company.core.messaging.rmq.impl.UtilsTest
Running com.company.core.messaging.rmq.impl.RmqQueueReaderTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec - in com.company.core.messaging.rmq.impl.RmqQueueReaderTest
Running com.company.core.messaging.rmq.message.RefreshMultiSpeakMessageTest
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.589 sec - in com.company.core.messaging.rmq.message.RefreshMultiSpeakMessageTest
Running com.company.core.messaging.rmq.BasicFunctionalityTest
Tests run: 7, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.228 sec - in com.company.core.messaging.rmq.BasicFunctionalityTest
Results :
Tests run: 207, Failures: 0, Errors: 0, Skipped: 0
[INFO]
[INFO] >>> cobertura-maven-plugin:2.5.2:cobertura (default) > [cobertura]test @ ns-core >>>
[INFO]
[INFO] --- maven-antrun-plugin:1.8:run (generate-sources) @ ns-core ---
[INFO] Executing tasks
main:
[INFO] Executed tasks
[INFO] Registering compile source root /home/bli/ns/tun-0018-New/BASE_STATION/java/target/generated-sources
[INFO]
[INFO] --- build-helper-maven-plugin:1.9.1:add-source (add-source) @ ns-core ---
[INFO] Source directory: /home/bli/ns/tun-0018-New/BASE_STATION/java/target/generated-sources added.
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ ns-core ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 5 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.2:compile (default-compile) @ ns-core ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 335 source files to /home/bli/ns/tun-0018-New/BASE_STATION/java/target/classes
[INFO]
[INFO] --- cobertura-maven-plugin:2.5.2:instrument (default) @ ns-core ---
[INFO] Cobertura 1.9.4.1 - GNU GPL License (NO WARRANTY) - See COPYRIGHT file
Instrumenting 481 files to /home/bli/ns/tun-0018-New/BASE_STATION/java/target/generated-classes/cobertura
[cobertura] WARN [main] net.sourceforge.cobertura.instrument.ClassInstrumenter - No line number information found for class com.company.core.common.dao.impl.hibernate.ErtReadingDaoHibernate. Perhaps you need to compile with debug=true?
[cobertura] WARN [main] net.sourceforge.cobertura.instrument.ClassInstrumenter - No line number information found for class com.company.core.common.dao.impl.jdbc.LicenseDaoJdbc. Perhaps you need to compile with debug=true?
[cobertura] WARN [main] net.sourceforge.cobertura.instrument.ClassInstrumenter - No line number information found for class com.company.core.common.dao.impl.jdbc.CategorySelectListDaoJdbc. Perhaps you need to compile with debug=true?
[cobertura] WARN [main] net.sourceforge.cobertura.instrument.ClassInstrumenter - No line number information found for class com.company.core.common.dao.impl.jdbc.MeterServiceDaoJdbc. Perhaps you need to compile with debug=true?
[cobertura] WARN [main] net.sourceforge.cobertura.instrument.ClassInstrumenter - No line number information found for class com.company.core.meter.reading.dao.jdbc.PolyPhaseMeterReadingDaoJdbc. Perhaps you need to compile with debug=true?
[cobertura] WARN [main] net.sourceforge.cobertura.instrument.ClassInstrumenter - No line number information found for class com.company.core.meter.reading.dao.jdbc.SinglePhaseMeterReadingDaoJdbc. Perhaps you need to compile with debug=true?
Cobertura: Saved information on 481 classes.
Instrument time: 516ms
[INFO] Instrumentation was successful.
[INFO] NOT adding cobertura ser file to attached artifacts list.
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ ns-core ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 5 resources
[INFO] Copying 5 resources
[INFO] Copying 2 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.2:testCompile (default-testCompile) @ ns-core ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 43 source files to /home/bli/ns/tun-0018-New/BASE_STATION/java/target/test-classes
[INFO]
[INFO] --- maven-surefire-plugin:2.18.1:test (default-test) @ ns-core ---
[INFO] Surefire report directory: /home/bli/ns/tun-0018-New/BASE_STATION/java/target/surefire-reports
[INFO] Using configured provider org.apache.maven.surefire.junitcore.JUnitCoreProvider
[INFO] parallel='none', perCoreThreadCount=true, threadCount=0, useUnlimitedThreads=false, threadCountSuites=0, threadCountClasses=0, threadCountMethods=0, parallelOptimized=true
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Results :
Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] top-level Maven project ......................... SUCCESS [ 0.079 s]
[INFO] core Java library ............................... FAILURE [ 17.884 s]
[INFO] web application (presentation) .................. SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 18.131 s
[INFO] Finished at: 2015-01-16T16:01:12-08:00
[INFO] Final Memory: 21M/363M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.18.1:test (default-test) on project ns-core: Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:2.18.1:test failed: There was an error in the forked process
[ERROR] java.lang.VerifyError: Instruction type does not match stack map
[ERROR] Exception Details:
[ERROR] Location:
[ERROR] com/company/test/BaseDaoIntegrationTest.removeDeviceReadingData(J[I)V @71: iload
[ERROR] Reason:
[ERROR] Type integer (current frame, locals[4]) is not assignable to 'java/text/NumberFormat' (stack map, locals[4])
[ERROR] Current Frame:
[ERROR] bci: @71
[ERROR] flags: { }
[ERROR] locals: { 'com/company/test/BaseDaoIntegrationTest', long, long_2nd, '[I', integer, integer, 'java/text/DecimalFormat', '[Ljava/lang/Object;', integer }
[ERROR] stack: { }
[ERROR] Stackmap Frame:
[ERROR] bci: @71
[ERROR] flags: { }
[ERROR] locals: { 'com/company/test/BaseDaoIntegrationTest', long, long_2nd, '[I', 'java/text/NumberFormat', '[Ljava/lang/Object;', integer }
[ERROR] stack: { }
[ERROR] Bytecode:
[ERROR] 0x0000000: 0336 0411 ffff 3605 120b 1100 21b8 0011
[ERROR] 0x0000010: bb00 5259 1254 b700 573a 0612 0b11 0022
[ERROR] 0x0000020: b800 112d be04 60bd 0004 3a07 120b 1100
[ERROR] 0x0000030: 24b8 0011 1907 031f b800 3953 120b 1100
[ERROR] 0x0000040: 25b8 0011 0436 0815 0819 07be 1100 2536
[ERROR] 0x0000050: 0411 0000 3605 a200 4615 0411 0025 a000
[ERROR] 0x0000060: 1a15 0511 0000 a000 1212 0b15 0415 0504
[ERROR] 0x0000070: b800 5f11 ffff 3605 120b 1100 26b8 0011
[ERROR] 0x0000080: 1907 1508 2d15 0804 642e b800 3e53 120b
[ERROR] 0x0000090: 1100 25b8 0011 8408 01a7 ffae 1505 9b00
[ERROR] 0x00000a0: 1212 0b15 0415 0503 b800 5f11 ffff 3605
[ERROR] 0x00000b0: 120b 1100 29b8 0011 0336 0815 0810 1011
[ERROR] 0x00000c0: 0029 3604 1100 0036 05a2 007a 1504 1100
[ERROR] 0x00000d0: 29a0 001a 1505 1100 00a0 0012 120b 1504
[ERROR] 0x00000e0: 1505 04b8 005f 11ff ff36 0512 0b11 002a
[ERROR] 0x00000f0: b800 1119 0615 0885 b600 633a 0912 0b11
[ERROR] 0x0000100: 002b b800 112a b600 31bb 0065 59b7 0066
[ERROR] 0x0000110: 1268 b600 6c19 09b6 006c 126e b600 6c2d
[ERROR] 0x0000120: beb8 0074 b600 6c12 76b6 006c b600 7a19
[ERROR] 0x0000130: 07b6 0044 5712 0b11 0029 b800 1184 0801
[ERROR] 0x0000140: a7ff 7b15 059b 0012 120b 1504 1505 03b8
[ERROR] 0x0000150: 005f 11ff ff36 0512 0b11 002f b800 11b1
[ERROR] 0x0000160:
[ERROR] Stackmap Table:
[ERROR] append_frame(@71,Object[#89],Object[#91],Integer)
[ERROR] chop_frame(@184,1)
[ERROR] append_frame(@187,Integer)
[ERROR] chop_frame(@351,1)
[ERROR]
[ERROR] at java.lang.Class.getDeclaredMethods0(Native Method)
[ERROR] at java.lang.Class.privateGetDeclaredMethods(Class.java:2693)
[ERROR] at java.lang.Class.privateGetMethodRecursive(Class.java:3040)
[ERROR] at java.lang.Class.getMethod0(Class.java:3010)
[ERROR] at java.lang.Class.getMethod(Class.java:1776)
[ERROR] at org.apache.maven.surefire.util.ReflectionUtils.tryGetMethod(ReflectionUtils.java:57)
[ERROR] at org.apache.maven.surefire.common.junit3.JUnit3TestChecker.isSuiteOnly(JUnit3TestChecker.java:64)
[ERROR] at org.apache.maven.surefire.common.junit3.JUnit3TestChecker.isValidJUnit3Test(JUnit3TestChecker.java:59)
[ERROR] at org.apache.maven.surefire.common.junit3.JUnit3TestChecker.accept(JUnit3TestChecker.java:54)
[ERROR] at org.apache.maven.surefire.common.junit4.JUnit4TestChecker.accept(JUnit4TestChecker.java:52)
[ERROR] at org.apache.maven.surefire.common.junit48.JUnit48TestChecker.accept(JUnit48TestChecker.java:50)
[ERROR] at org.apache.maven.surefire.util.DefaultScanResult.applyFilter(DefaultScanResult.java:97)
[ERROR] at org.apache.maven.surefire.junitcore.JUnitCoreProvider.scanClassPath(JUnitCoreProvider.java:210)
[ERROR] at org.apache.maven.surefire.junitcore.JUnitCoreProvider.invoke(JUnitCoreProvider.java:134)
[ERROR] at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:203)
[ERROR] at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:155)
[ERROR] at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginExecutionException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
Cobertura Maven 插件需要更新到版本 2.7 以支持 Java8.
主题类似于:
mvn test fails because of Surefire JDK version?
我的工作解决方案是:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.19.1</version>
<configuration>
<jvm>${env.JAVA_HOME}/bin/java</jvm>
</configuration>
</plugin>
解决方案的原因以及我是如何得出的
我根本没有 Cobertura。
我是从控制台开始构建的。
我已经将 JAVA_HOME 定义为 JDK 1.8.
java -version
java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)
javac -version
javac 1.8.0_25
mvn -U clean install -Dmaven.test.skip=true
运行良好。
仅执行 mvn -U clean install
会导致:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.14.1:test (default-test) on project logprocessing-core: Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:2.14.1:test failed: There was an error in the forked process
[ERROR] java.lang.UnsupportedClassVersionError: mycompany/myproject/common/TestConstants : Unsupported major.minor version 52.0
使用 surefire 2.19.1 也会出现同样的问题。
Surefire 有自己的私人 JDK 首选项。
以前也遇到过同样的问题。
参见:
- http://sampreshan.svashishtha.com/2012/04/01/quicktip-maven-surefire-plugin-unsupported-major-minor-version-51-0/
- https://coderwall.com/p/y8yg8w/maven-unsupported-major-minor-version-of-surefire
- Unsupported major.minor version 51.0 on Junit, but not web app
- Maven/Jenkins java.lang.UnsupportedClassVersionError: Unsupported major.minor version 51.0
因此解决方案是在插件配置中显式添加 jvm 规范。
此致,
下水道
运行 你作为管理员的程序,这对我有用。
我有多个模块项目。我所有的测试都是在 JDK 7 下通过的。但是当我升级到 JDK 8 时,maven surefire 运行 两次(它 运行 在 JDK 7 中两次出色地)。第一个测试通过,但第二个测试失败。
我试过升级最新的 sure-fire 但没有成功。
有人知道如何解决这个问题吗?
parent.pom
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.2</version>
<configuration>
<fork>true</fork>
<source>${source.level}</source>
<target>${target.level}</target>
<testSource>${source.level}</testSource>
<testTarget>${target.level}</testTarget>
<showWarnings>true</showWarnings>
<showDeprecation>true</showDeprecation>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.18.1</version>
<configuration>
<argLine>-Xms512m -Xmx1024m
</argLine>
</configuration>
</plugin>
<!--This plugin's configuration is used to store Eclipse m2e settings
only. It has no influence on the Maven build itself. -->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>
org.apache.maven.plugins
</groupId>
<artifactId>
maven-antrun-plugin
</artifactId>
<versionRange>
[1.3,)
</versionRange>
<goals>
<goal>run</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
模块 1
<build>
<pluginManagement>
<plugins>
<!--This plugin's configuration is used to store Eclipse m2e settings
only. It has no influence on the Maven build itself. -->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<versionRange>[1.0,)</versionRange>
<goals>
<goal>run</goal>
</goals>
</pluginExecutionFilter>
<action>
<execute />
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<id>generate-sources</id>
<phase>generate-sources</phase>
<configuration>
<tasks>
<mkdir dir="target/generated-sources" />
<exec executable="${protoc.executable}">
<arg value="--java_out=target/generated-sources" />
<arg value="--proto_path=${basedir}/../messdefn/" />
<arg value="${basedir}/../messdefn/messdefn.proto" />
</exec>
</tasks>
<sourceRoot>target/generated-sources</sourceRoot>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<dependencies>
<dependency>
<groupId>org.apache.maven.surefire</groupId>
<artifactId>surefire-junit47</artifactId>
<version>2.12.3</version>
</dependency>
</dependencies>
<configuration>
<excludedGroups>com.company.test.IntegrationTest</excludedGroups>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.9.1</version>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>${project.build.directory}/generated-sources</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<testResources>
<testResource>
<directory>src/test/resources</directory>
<includes>
<include>log4j.xml</include>
<include>dnp3_devices.ns</include>
<include>application.properties</include>
<include>unitils.properties</include>
<include>dbscripts/*.sql</include>
<include>applicationContext-test.xml</include>
<include>ehcache.xml</include>
</includes>
</testResource>
<testResource>
<directory>src/main/resources</directory>
<excludes>
<exclude>log4j.xml</exclude>
</excludes>
</testResource>
<!-- add the data file (*.xml) for unitils -->
<testResource>
<directory>${project.basedir}/src/test/java</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</testResource>
</testResources>
</build>
<profiles>
<profile>
<id>jenkins</id>
<activation>
<property>
<name>env.IS_CI_BUILD</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<version>2.5.2</version>
<configuration>
<instrumentation>
<ignores>
<ignore>com.company.protobuf.message.*</ignore>
</ignores>
<excludes>
<exclude>com/company/protobuf/message/**/*.class</exclude>
</excludes>
</instrumentation>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<includes>
<include>**/*Test.java</include>
<include>**/*ITCase.java</include>
</includes>
<excludedGroups>com.company.core.IgnoreITCase</excludedGroups>
<systemProperties>
<DB_BUILD_USER>${env.DB_BUILD_USER}</DB_BUILD_USER>
<TWO_TASK>${env.TWO_TASK}</TWO_TASK>
</systemProperties>
</configuration>
<executions>
<execution>
<id>integration-test</id>
<phase>integration-test</phase>
<goals>
<goal>test</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
这是 Maven 结果
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] top-level Maven project
[INFO] core Java library
[INFO] web application (presentation)
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building NS top-level Maven project 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ parent ---
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building NS core Java library 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ ns-core ---
[INFO] Deleting /home/bli/ns/tun-0018-New/BASE_STATION/java/target
[INFO]
[INFO] --- maven-antrun-plugin:1.8:run (generate-sources) @ ns-core ---
[INFO] Executing tasks
main:
[mkdir] Created dir: /home/bli/ns/tun-0018-New/BASE_STATION/java/target/generated-sources
[INFO] Executed tasks
[INFO] Registering compile source root /home/bli/ns/tun-0018-New/BASE_STATION/java/target/generated-sources
[INFO]
[INFO] --- build-helper-maven-plugin:1.9.1:add-source (add-source) @ ns-core ---
[INFO] Source directory: /home/bli/ns/tun-0018-New/BASE_STATION/java/target/generated-sources added.
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ ns-core ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 5 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.2:compile (default-compile) @ ns-core ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 335 source files to /home/bli/ns/tun-0018-New/BASE_STATION/java/target/classes
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ ns-core ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 5 resources
[INFO] Copying 5 resources
[INFO] Copying 2 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.2:testCompile (default-testCompile) @ ns-core ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 43 source files to /home/bli/ns/tun-0018-New/BASE_STATION/java/target/test-classes
[INFO]
[INFO] --- maven-surefire-plugin:2.18.1:test (default-test) @ ns-core ---
[INFO] Surefire report directory: /home/bli/ns/tun-0018-New/BASE_STATION/java/target/surefire-reports
[INFO] Using configured provider org.apache.maven.surefire.junitcore.JUnitCoreProvider
[INFO] parallel='none', perCoreThreadCount=true, threadCount=0, useUnlimitedThreads=false, threadCountSuites=0, threadCountClasses=0, threadCountMethods=0, parallelOptimized=true
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running com.company.core.shared.dto.MeterReadingPpDtoTest
Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec - in com.company.core.shared.dto.MeterReadingPpDtoTest
Running com.company.core.shared.db.DbUtilsTest
Tests run: 9, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec - in com.company.core.shared.db.DbUtilsTest
Running com.company.core.shared.SinglePhaseMeterReadingDtoTest
Tests run: 13, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.083 sec - in com.company.core.shared.SinglePhaseMeterReadingDtoTest
Running com.company.core.shared.utils.EnvironmentTest
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.003 sec - in com.company.core.shared.utils.EnvironmentTest
Running com.company.core.shared.utils.DateUtilsTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.007 sec - in com.company.core.shared.utils.DateUtilsTest
Running com.company.core.shared.utils.NsPropertyFileTest
Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.005 sec - in com.company.core.shared.utils.NsPropertyFileTest
Running com.company.core.shared.utils.ConversionsTest
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec - in com.company.core.shared.utils.ConversionsTest
Running com.company.core.shared.utils.NsConfigurationTest
Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.006 sec - in com.company.core.shared.utils.NsConfigurationTest
Running com.company.core.springutil.tunPropertyPlaceholderConfigurerTest
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.258 sec - in com.company.core.springutil.tunPropertyPlaceholderConfigurerTest
Running com.company.core.springutil.tunApplicationContextTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.013 sec - in com.company.core.springutil.tunApplicationContextTest
Running com.company.core.springutil.ApplicationContextProviderTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.034 sec - in com.company.core.springutil.ApplicationContextProviderTest
Running com.company.core.common.dao.NetworkDeviceDaoTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.221 sec - in com.company.core.common.dao.NetworkDeviceDaoTest
Running com.company.core.common.dao.dto.CategorySelectListEntryDtoTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec - in com.company.core.common.dao.dto.CategorySelectListEntryDtoTest
Running com.company.core.common.dao.model.ErtDeviceTest
Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.009 sec - in com.company.core.common.dao.model.ErtDeviceTest
Running com.company.core.common.dao.model.MeterDeviceTest
Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.007 sec - in com.company.core.common.dao.model.MeterDeviceTest
Running com.company.core.common.dao.model.ErtReadingTest
Tests run: 14, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.018 sec - in com.company.core.common.dao.model.ErtReadingTest
Running com.company.core.common.dao.model.ProductTest
Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.027 sec - in com.company.core.common.dao.model.ProductTest
Running com.company.core.common.dao.impl.jdbc.SystemCodeDaoJdbcTest
Tests run: 21, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.323 sec - in com.company.core.common.dao.impl.jdbc.SystemCodeDaoJdbcTest
Running com.company.core.common.hibernate.type.UtcTimestampTypeTest
Tests run: 18, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.019 sec - in com.company.core.common.hibernate.type.UtcTimestampTypeTest
Running com.company.core.common.service.impl.NetworkUserServiceImplTest
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.005 sec - in com.company.core.common.service.impl.NetworkUserServiceImplTest
Running com.company.core.common.model.StatusInfoTest
Tests run: 7, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec - in com.company.core.common.model.StatusInfoTest
Running com.company.core.common.UtilsTest
Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.005 sec - in com.company.core.common.UtilsTest
Running com.company.core.meter.configuration.service.impl.ErtDeviceConfigurationServiceImplTest
Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.028 sec - in com.company.core.meter.configuration.service.impl.ErtDeviceConfigurationServiceImplTest
Running com.company.core.meter.configuration.service.impl.MeterConfigurationServiceImplTest
Tests run: 12, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.029 sec - in com.company.core.meter.configuration.service.impl.MeterConfigurationServiceImplTest
Running com.company.core.meter.reading.dao.tunMeterReadingDaoTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.01 sec - in com.company.core.meter.reading.dao.tunMeterReadingDaoTest
Running com.company.core.meter.reading.dao.hibernate.InitiateReadingDaoHibernateTest
Tests run: 7, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.396 sec - in com.company.core.meter.reading.dao.hibernate.InitiateReadingDaoHibernateTest
Running com.company.core.meter.reading.dao.jdbc.DeviceReadingDaoJdbcTest
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.112 sec - in com.company.core.meter.reading.dao.jdbc.DeviceReadingDaoJdbcTest
Running com.company.core.meter.request.impl.InitiateReadingServiceImplTest
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.009 sec - in com.company.core.meter.request.impl.InitiateReadingServiceImplTest
Running com.company.core.vrapp.model.Dnp3ConfigurationTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.002 sec - in com.company.core.vrapp.model.Dnp3ConfigurationTest
Running com.company.core.vrapp.model.AverageDemandTest
Tests run: 7, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec - in com.company.core.vrapp.model.AverageDemandTest
Running com.company.core.vrapp.model.VrDeviceTest
Tests run: 21, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.116 sec - in com.company.core.vrapp.model.VrDeviceTest
Running com.company.core.messaging.rmq.impl.ReflectionTest
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec - in com.company.core.messaging.rmq.impl.ReflectionTest
Running com.company.core.messaging.rmq.impl.RmqBrokerConfigTest
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec - in com.company.core.messaging.rmq.impl.RmqBrokerConfigTest
Running com.company.core.messaging.rmq.impl.UtilsTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec - in com.company.core.messaging.rmq.impl.UtilsTest
Running com.company.core.messaging.rmq.impl.RmqQueueReaderTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec - in com.company.core.messaging.rmq.impl.RmqQueueReaderTest
Running com.company.core.messaging.rmq.message.RefreshMultiSpeakMessageTest
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.589 sec - in com.company.core.messaging.rmq.message.RefreshMultiSpeakMessageTest
Running com.company.core.messaging.rmq.BasicFunctionalityTest
Tests run: 7, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.228 sec - in com.company.core.messaging.rmq.BasicFunctionalityTest
Results :
Tests run: 207, Failures: 0, Errors: 0, Skipped: 0
[INFO]
[INFO] >>> cobertura-maven-plugin:2.5.2:cobertura (default) > [cobertura]test @ ns-core >>>
[INFO]
[INFO] --- maven-antrun-plugin:1.8:run (generate-sources) @ ns-core ---
[INFO] Executing tasks
main:
[INFO] Executed tasks
[INFO] Registering compile source root /home/bli/ns/tun-0018-New/BASE_STATION/java/target/generated-sources
[INFO]
[INFO] --- build-helper-maven-plugin:1.9.1:add-source (add-source) @ ns-core ---
[INFO] Source directory: /home/bli/ns/tun-0018-New/BASE_STATION/java/target/generated-sources added.
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ ns-core ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 5 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.2:compile (default-compile) @ ns-core ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 335 source files to /home/bli/ns/tun-0018-New/BASE_STATION/java/target/classes
[INFO]
[INFO] --- cobertura-maven-plugin:2.5.2:instrument (default) @ ns-core ---
[INFO] Cobertura 1.9.4.1 - GNU GPL License (NO WARRANTY) - See COPYRIGHT file
Instrumenting 481 files to /home/bli/ns/tun-0018-New/BASE_STATION/java/target/generated-classes/cobertura
[cobertura] WARN [main] net.sourceforge.cobertura.instrument.ClassInstrumenter - No line number information found for class com.company.core.common.dao.impl.hibernate.ErtReadingDaoHibernate. Perhaps you need to compile with debug=true?
[cobertura] WARN [main] net.sourceforge.cobertura.instrument.ClassInstrumenter - No line number information found for class com.company.core.common.dao.impl.jdbc.LicenseDaoJdbc. Perhaps you need to compile with debug=true?
[cobertura] WARN [main] net.sourceforge.cobertura.instrument.ClassInstrumenter - No line number information found for class com.company.core.common.dao.impl.jdbc.CategorySelectListDaoJdbc. Perhaps you need to compile with debug=true?
[cobertura] WARN [main] net.sourceforge.cobertura.instrument.ClassInstrumenter - No line number information found for class com.company.core.common.dao.impl.jdbc.MeterServiceDaoJdbc. Perhaps you need to compile with debug=true?
[cobertura] WARN [main] net.sourceforge.cobertura.instrument.ClassInstrumenter - No line number information found for class com.company.core.meter.reading.dao.jdbc.PolyPhaseMeterReadingDaoJdbc. Perhaps you need to compile with debug=true?
[cobertura] WARN [main] net.sourceforge.cobertura.instrument.ClassInstrumenter - No line number information found for class com.company.core.meter.reading.dao.jdbc.SinglePhaseMeterReadingDaoJdbc. Perhaps you need to compile with debug=true?
Cobertura: Saved information on 481 classes.
Instrument time: 516ms
[INFO] Instrumentation was successful.
[INFO] NOT adding cobertura ser file to attached artifacts list.
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ ns-core ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 5 resources
[INFO] Copying 5 resources
[INFO] Copying 2 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.2:testCompile (default-testCompile) @ ns-core ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 43 source files to /home/bli/ns/tun-0018-New/BASE_STATION/java/target/test-classes
[INFO]
[INFO] --- maven-surefire-plugin:2.18.1:test (default-test) @ ns-core ---
[INFO] Surefire report directory: /home/bli/ns/tun-0018-New/BASE_STATION/java/target/surefire-reports
[INFO] Using configured provider org.apache.maven.surefire.junitcore.JUnitCoreProvider
[INFO] parallel='none', perCoreThreadCount=true, threadCount=0, useUnlimitedThreads=false, threadCountSuites=0, threadCountClasses=0, threadCountMethods=0, parallelOptimized=true
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Results :
Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] top-level Maven project ......................... SUCCESS [ 0.079 s]
[INFO] core Java library ............................... FAILURE [ 17.884 s]
[INFO] web application (presentation) .................. SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 18.131 s
[INFO] Finished at: 2015-01-16T16:01:12-08:00
[INFO] Final Memory: 21M/363M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.18.1:test (default-test) on project ns-core: Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:2.18.1:test failed: There was an error in the forked process
[ERROR] java.lang.VerifyError: Instruction type does not match stack map
[ERROR] Exception Details:
[ERROR] Location:
[ERROR] com/company/test/BaseDaoIntegrationTest.removeDeviceReadingData(J[I)V @71: iload
[ERROR] Reason:
[ERROR] Type integer (current frame, locals[4]) is not assignable to 'java/text/NumberFormat' (stack map, locals[4])
[ERROR] Current Frame:
[ERROR] bci: @71
[ERROR] flags: { }
[ERROR] locals: { 'com/company/test/BaseDaoIntegrationTest', long, long_2nd, '[I', integer, integer, 'java/text/DecimalFormat', '[Ljava/lang/Object;', integer }
[ERROR] stack: { }
[ERROR] Stackmap Frame:
[ERROR] bci: @71
[ERROR] flags: { }
[ERROR] locals: { 'com/company/test/BaseDaoIntegrationTest', long, long_2nd, '[I', 'java/text/NumberFormat', '[Ljava/lang/Object;', integer }
[ERROR] stack: { }
[ERROR] Bytecode:
[ERROR] 0x0000000: 0336 0411 ffff 3605 120b 1100 21b8 0011
[ERROR] 0x0000010: bb00 5259 1254 b700 573a 0612 0b11 0022
[ERROR] 0x0000020: b800 112d be04 60bd 0004 3a07 120b 1100
[ERROR] 0x0000030: 24b8 0011 1907 031f b800 3953 120b 1100
[ERROR] 0x0000040: 25b8 0011 0436 0815 0819 07be 1100 2536
[ERROR] 0x0000050: 0411 0000 3605 a200 4615 0411 0025 a000
[ERROR] 0x0000060: 1a15 0511 0000 a000 1212 0b15 0415 0504
[ERROR] 0x0000070: b800 5f11 ffff 3605 120b 1100 26b8 0011
[ERROR] 0x0000080: 1907 1508 2d15 0804 642e b800 3e53 120b
[ERROR] 0x0000090: 1100 25b8 0011 8408 01a7 ffae 1505 9b00
[ERROR] 0x00000a0: 1212 0b15 0415 0503 b800 5f11 ffff 3605
[ERROR] 0x00000b0: 120b 1100 29b8 0011 0336 0815 0810 1011
[ERROR] 0x00000c0: 0029 3604 1100 0036 05a2 007a 1504 1100
[ERROR] 0x00000d0: 29a0 001a 1505 1100 00a0 0012 120b 1504
[ERROR] 0x00000e0: 1505 04b8 005f 11ff ff36 0512 0b11 002a
[ERROR] 0x00000f0: b800 1119 0615 0885 b600 633a 0912 0b11
[ERROR] 0x0000100: 002b b800 112a b600 31bb 0065 59b7 0066
[ERROR] 0x0000110: 1268 b600 6c19 09b6 006c 126e b600 6c2d
[ERROR] 0x0000120: beb8 0074 b600 6c12 76b6 006c b600 7a19
[ERROR] 0x0000130: 07b6 0044 5712 0b11 0029 b800 1184 0801
[ERROR] 0x0000140: a7ff 7b15 059b 0012 120b 1504 1505 03b8
[ERROR] 0x0000150: 005f 11ff ff36 0512 0b11 002f b800 11b1
[ERROR] 0x0000160:
[ERROR] Stackmap Table:
[ERROR] append_frame(@71,Object[#89],Object[#91],Integer)
[ERROR] chop_frame(@184,1)
[ERROR] append_frame(@187,Integer)
[ERROR] chop_frame(@351,1)
[ERROR]
[ERROR] at java.lang.Class.getDeclaredMethods0(Native Method)
[ERROR] at java.lang.Class.privateGetDeclaredMethods(Class.java:2693)
[ERROR] at java.lang.Class.privateGetMethodRecursive(Class.java:3040)
[ERROR] at java.lang.Class.getMethod0(Class.java:3010)
[ERROR] at java.lang.Class.getMethod(Class.java:1776)
[ERROR] at org.apache.maven.surefire.util.ReflectionUtils.tryGetMethod(ReflectionUtils.java:57)
[ERROR] at org.apache.maven.surefire.common.junit3.JUnit3TestChecker.isSuiteOnly(JUnit3TestChecker.java:64)
[ERROR] at org.apache.maven.surefire.common.junit3.JUnit3TestChecker.isValidJUnit3Test(JUnit3TestChecker.java:59)
[ERROR] at org.apache.maven.surefire.common.junit3.JUnit3TestChecker.accept(JUnit3TestChecker.java:54)
[ERROR] at org.apache.maven.surefire.common.junit4.JUnit4TestChecker.accept(JUnit4TestChecker.java:52)
[ERROR] at org.apache.maven.surefire.common.junit48.JUnit48TestChecker.accept(JUnit48TestChecker.java:50)
[ERROR] at org.apache.maven.surefire.util.DefaultScanResult.applyFilter(DefaultScanResult.java:97)
[ERROR] at org.apache.maven.surefire.junitcore.JUnitCoreProvider.scanClassPath(JUnitCoreProvider.java:210)
[ERROR] at org.apache.maven.surefire.junitcore.JUnitCoreProvider.invoke(JUnitCoreProvider.java:134)
[ERROR] at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:203)
[ERROR] at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:155)
[ERROR] at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginExecutionException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
Cobertura Maven 插件需要更新到版本 2.7 以支持 Java8.
主题类似于: mvn test fails because of Surefire JDK version?
我的工作解决方案是:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.19.1</version>
<configuration>
<jvm>${env.JAVA_HOME}/bin/java</jvm>
</configuration>
</plugin>
解决方案的原因以及我是如何得出的
我根本没有 Cobertura。 我是从控制台开始构建的。 我已经将 JAVA_HOME 定义为 JDK 1.8.
java -version java version "1.8.0_91" Java(TM) SE Runtime Environment (build 1.8.0_91-b14) Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)
javac -version javac 1.8.0_25
mvn -U clean install -Dmaven.test.skip=true
运行良好。
仅执行 mvn -U clean install
会导致:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.14.1:test (default-test) on project logprocessing-core: Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:2.14.1:test failed: There was an error in the forked process
[ERROR] java.lang.UnsupportedClassVersionError: mycompany/myproject/common/TestConstants : Unsupported major.minor version 52.0
使用 surefire 2.19.1 也会出现同样的问题。
Surefire 有自己的私人 JDK 首选项。
以前也遇到过同样的问题。 参见:
- http://sampreshan.svashishtha.com/2012/04/01/quicktip-maven-surefire-plugin-unsupported-major-minor-version-51-0/
- https://coderwall.com/p/y8yg8w/maven-unsupported-major-minor-version-of-surefire
- Unsupported major.minor version 51.0 on Junit, but not web app
- Maven/Jenkins java.lang.UnsupportedClassVersionError: Unsupported major.minor version 51.0
因此解决方案是在插件配置中显式添加 jvm 规范。
此致, 下水道
运行 你作为管理员的程序,这对我有用。