faucet-pipeline / faucet-pipeline-spring-boot-starter Goto Github PK
View Code? Open in Web Editor NEWfaucet-pipeline for Spring Boot
License: Apache License 2.0
faucet-pipeline for Spring Boot
License: Apache License 2.0
Hi π
This starter is relies on ResourceProperties,which was deprecated in favor of WebProperties.Resources in Spring Boot 2.4.0 and removed in 2.6.0 - resulting in a ClassNotFoundException
.
This essentially makes this starter unusable for all projects using boot >= 2.6.0.
Hi,
I've tried to do the tl;dr
section, namely executing ./mwnw clean install
. It fails on the tests stage due to:
(pwd
and $HOME
are replaced by my local paths)
[ERROR] org.apache.maven.surefire.booter.SurefireBooterForkException: The forked VM terminated without properly saying goodbye. VM crash or System.exit called?
[ERROR] Command was /bin/sh -c cd `pwd`/faucet-pipeline-spring-boot-starter/faucet-pipeline-spring-boot-autoconfigure && /Library/Java/JavaVirtualMachines/openjdk-11.0.1.jdk/Contents/Home/bin/java -javaagent:$HOME/.m2/repository/org/jacoco/org.jacoco.agent/0.8.1/org.jacoco.agent-0.8.1-runtime.jar=destfile=`pwd`/faucet-pipeline-spring-boot-starter/faucet-pipeline-spring-boot-autoconfigure/target/jacoco.exec -jar `pwd`/faucet-pipeline-spring-boot-starter/faucet-pipeline-spring-boot-autoconfigure/target/surefire/surefirebooter5822704573787709978.jar `pwd`/faucet-pipeline-spring-boot-starter/faucet-pipeline-spring-boot-autoconfigure/target/surefire 2018-11-26T23-37-06_082-jvmRun1 surefire714121902207739922tmp surefire_011385807132639718567tmp
[ERROR] Error occurred in starting fork, check output in log
[ERROR] Process Exit Code: 134
[ERROR] at org.apache.maven.plugin.surefire.booterclient.ForkStarter.fork(ForkStarter.java:669)
[ERROR] at org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:282)
[ERROR] at org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:245)
[ERROR] at org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeProvider(AbstractSurefireMojo.java:1183)
[ERROR] at org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeAfterPreconditionsChecked(AbstractSurefireMojo.java:1011)
[ERROR] at org.apache.maven.plugin.surefire.AbstractSurefireMojo.execute(AbstractSurefireMojo.java:857)
[ERROR] at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137)
[ERROR] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
[ERROR] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154)
[ERROR] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146)
[ERROR] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
[ERROR] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
[ERROR] at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56)
[ERROR] at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
[ERROR] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305)
[ERROR] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192)
[ERROR] at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105)
[ERROR] at org.apache.maven.cli.MavenCli.execute(MavenCli.java:956)
[ERROR] at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:290)
[ERROR] at org.apache.maven.cli.MavenCli.main(MavenCli.java:194)
[ERROR] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[ERROR] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[ERROR] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[ERROR] at java.base/java.lang.reflect.Method.invoke(Method.java:566)
[ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
[ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
[ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
[ERROR] at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
[ERROR] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[ERROR] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[ERROR] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[ERROR] at java.base/java.lang.reflect.Method.invoke(Method.java:566)
[ERROR] at org.apache.maven.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.java:39)
[ERROR] at org.apache.maven.wrapper.WrapperExecutor.execute(WrapperExecutor.java:122)
[ERROR] at org.apache.maven.wrapper.MavenWrapperMain.main(MavenWrapperMain.java:60)
due to some error with JaCoCo. It looks a bit similar to this one.
I could work around it by removing the JaCoCo step from the pom.xml
, namely removing the jacoco-maven-plugin
there entirely.
The error is reproducable on my end, if I re-enable the section again, it fails again.
Here is the log that is dumped to faucet-pipeline-spring-boot-autoconfigure/target/surefire-reports/2018-11-27T21-43-36_524-jvmRun1.dumpstream
# Created at 2018-11-27T21:43:37.178
Corrupted STDOUT by directly writing to native stream in forked JVM 1. Stream 'FATAL ERROR in native method: processing of -javaagent failed'.
java.lang.IllegalArgumentException: Stream stdin corrupted. Expected comma after third character in command 'FATAL ERROR in native method: processing of -javaagent failed'.
at org.apache.maven.plugin.surefire.booterclient.output.ForkClient$OperationalData.<init>(ForkClient.java:507)
at org.apache.maven.plugin.surefire.booterclient.output.ForkClient.processLine(ForkClient.java:210)
at org.apache.maven.plugin.surefire.booterclient.output.ForkClient.consumeLine(ForkClient.java:177)
at org.apache.maven.plugin.surefire.booterclient.output.ThreadedStreamConsumer$Pumper.run(ThreadedStreamConsumer.java:88)
at java.base/java.lang.Thread.run(Thread.java:834)
and here is most of what is written to faucet-pipeline-spring-boot-autoconfigure/target/surefire-reports/2018-11-27T21-43-36_524.dumpstream
:
# Created at 2018-11-27T21:43:37.177
Exception in thread "main" java.lang.reflect.InvocationTargetException
# Created at 2018-11-27T21:43:37.177
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
# Created at 2018-11-27T21:43:37.178
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
# Created at 2018-11-27T21:43:37.179
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
# Created at 2018-11-27T21:43:37.179
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
# Created at 2018-11-27T21:43:37.179
at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:513)
# Created at 2018-11-27T21:43:37.180
at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:525)
# Created at 2018-11-27T21:43:37.181
Caused by: java.lang.RuntimeException: Class java/lang/UnknownError could not be instrumented.
# Created at 2018-11-27T21:43:37.181
at org.jacoco.agent.rt.internal_c13123e.core.runtime.ModifiedSystemClassRuntime.createFor(ModifiedSystemClassRuntime.java:140)
# Created at 2018-11-27T21:43:37.181
at org.jacoco.agent.rt.internal_c13123e.core.runtime.ModifiedSystemClassRuntime.createFor(ModifiedSystemClassRuntime.java:101)
# Created at 2018-11-27T21:43:37.182
at org.jacoco.agent.rt.internal_c13123e.PreMain.createRuntime(PreMain.java:55)
# Created at 2018-11-27T21:43:37.182
at org.jacoco.agent.rt.internal_c13123e.PreMain.premain(PreMain.java:47)
# Created at 2018-11-27T21:43:37.182
... 6 more
# Created at 2018-11-27T21:43:37.182
Caused by: java.lang.NoSuchFieldException: $jacocoAccess
# Created at 2018-11-27T21:43:37.182
at java.base/java.lang.Class.getField(Class.java:2000)
# Created at 2018-11-27T21:43:37.183
at org.jacoco.agent.rt.internal_c13123e.core.runtime.ModifiedSystemClassRuntime.createFor(ModifiedSystemClassRuntime.java:138)
# Created at 2018-11-27T21:43:37.183
... 9 more
From what I understand it tries to instrumentalize the JVM on startup and this fails. JaCoCo wants to be the first to load the UUID
class in order to be able to instrumentalize it⦠for some reason (I am absolutely sure for the best reasons, at least that's what I hope).
I haven't add any additional javaagent (to the best of my knowledge) which could potentially load the UUID
class first. But maybe it is some contextual thing or something that broke in a later Java version?
I have to say I haven't used java agents usually.
My suggestion: Why I do see some benefits in having a complete example in the first place. Maybe the inclusion of JaCoCo is a bit oversized here? At least if it is causing problems?
But maybe it's just my local setup?
Spring Boot 3 is currently not supported for two major reasons:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. πππ
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google β€οΈ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.