{"action":"created","issue":{"url":"https://api.github.com/repos/faucet-pipeline/faucet-pipeline-spring-boot-starter/issues/3","repository_url":"https://api.github.com/repos/faucet-pipeline/faucet-pipeline-spring-boot-starter","labels_url":"https://api.github.com/repos/faucet-pipeline/faucet-pipeline-spring-boot-starter/issues/3/labels{/name}","comments_url":"https://api.github.com/repos/faucet-pipeline/faucet-pipeline-spring-boot-starter/issues/3/comments","events_url":"https://api.github.com/repos/faucet-pipeline/faucet-pipeline-spring-boot-starter/issues/3/events","html_url":"https://github.com/faucet-pipeline/faucet-pipeline-spring-boot-starter/issues/3","id":384981568,"node_id":"MDU6SXNzdWUzODQ5ODE1Njg=","number":3,"title":"Tests fail due to JaCoCo error","user":{"login":"tilois","id":4662696,"node_id":"MDQ6VXNlcjQ2NjI2OTY=","avatar_url":"https://avatars3.githubusercontent.com/u/4662696?v=4","gravatar_id":"","url":"https://api.github.com/users/tilois","html_url":"https://github.com/tilois","followers_url":"https://api.github.com/users/tilois/followers","following_url":"https://api.github.com/users/tilois/following{/other_user}","gists_url":"https://api.github.com/users/tilois/gists{/gist_id}","starred_url":"https://api.github.com/users/tilois/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tilois/subscriptions","organizations_url":"https://api.github.com/users/tilois/orgs","repos_url":"https://api.github.com/users/tilois/repos","events_url":"https://api.github.com/users/tilois/events{/privacy}","received_events_url":"https://api.github.com/users/tilois/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2018-11-27T20:54:41Z","updated_at":"2018-11-27T21:20:43Z","closed_at":"2018-11-27T21:06:16Z","author_association":"NONE","body":"Hi,\r\n\r\nI've tried to do the `tl;dr` section, namely executing `./mwnw clean install`. It fails on the tests stage due to:\r\n\r\n## Maven Build error\r\n(`pwd` and `$HOME` are replaced by my local paths)\r\n```\r\n[ERROR] org.apache.maven.surefire.booter.SurefireBooterForkException: The forked VM terminated without properly saying goodbye. VM crash or System.exit called?\r\n[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\r\n[ERROR] Error occurred in starting fork, check output in log\r\n[ERROR] Process Exit Code: 134\r\n[ERROR] \tat org.apache.maven.plugin.surefire.booterclient.ForkStarter.fork(ForkStarter.java:669)\r\n[ERROR] \tat org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:282)\r\n[ERROR] \tat org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:245)\r\n[ERROR] \tat org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeProvider(AbstractSurefireMojo.java:1183)\r\n[ERROR] \tat org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeAfterPreconditionsChecked(AbstractSurefireMojo.java:1011)\r\n[ERROR] \tat org.apache.maven.plugin.surefire.AbstractSurefireMojo.execute(AbstractSurefireMojo.java:857)\r\n[ERROR] \tat org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137)\r\n[ERROR] \tat org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)\r\n[ERROR] \tat org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154)\r\n[ERROR] \tat org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146)\r\n[ERROR] \tat org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)\r\n[ERROR] \tat org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)\r\n[ERROR] \tat org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56)\r\n[ERROR] \tat org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)\r\n[ERROR] \tat org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305)\r\n[ERROR] \tat org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192)\r\n[ERROR] \tat org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105)\r\n[ERROR] \tat org.apache.maven.cli.MavenCli.execute(MavenCli.java:956)\r\n[ERROR] \tat org.apache.maven.cli.MavenCli.doMain(MavenCli.java:290)\r\n[ERROR] \tat org.apache.maven.cli.MavenCli.main(MavenCli.java:194)\r\n[ERROR] \tat java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n[ERROR] \tat java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\r\n[ERROR] \tat java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n[ERROR] \tat java.base/java.lang.reflect.Method.invoke(Method.java:566)\r\n[ERROR] \tat org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)\r\n[ERROR] \tat org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)\r\n[ERROR] \tat org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)\r\n[ERROR] \tat org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)\r\n[ERROR] \tat java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n[ERROR] \tat java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\r\n[ERROR] \tat java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n[ERROR] \tat java.base/java.lang.reflect.Method.invoke(Method.java:566)\r\n[ERROR] \tat org.apache.maven.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.java:39)\r\n[ERROR] \tat org.apache.maven.wrapper.WrapperExecutor.execute(WrapperExecutor.java:122)\r\n[ERROR] \tat org.apache.maven.wrapper.MavenWrapperMain.main(MavenWrapperMain.java:60)\r\n```\r\n\r\ndue to some error with JaCoCo. It looks a bit similar to [this one](https://github.com/jacoco/jacoco/issues/5510).\r\n\r\n## Workaround\r\n\r\nI could work around it by removing the JaCoCo step from the `pom.xml`, namely removing the `jacoco-maven-plugin` there entirely.\r\n\r\n## Logfiles\r\n\r\nThe error is reproducable on my end, if I re-enable the section again, it fails again.\r\nHere is the log that is dumped to `faucet-pipeline-spring-boot-autoconfigure/target/surefire-reports/2018-11-27T21-43-36_524-jvmRun1.dumpstream`\r\n```\r\n# Created at 2018-11-27T21:43:37.178\r\nCorrupted STDOUT by directly writing to native stream in forked JVM 1. Stream 'FATAL ERROR in native method: processing of -javaagent failed'.\r\njava.lang.IllegalArgumentException: Stream stdin corrupted. Expected comma after third character in command 'FATAL ERROR in native method: processing of -javaagent failed'.\r\n    at org.apache.maven.plugin.surefire.booterclient.output.ForkClient$OperationalData.<init>(ForkClient.java:507)\r\n    at org.apache.maven.plugin.surefire.booterclient.output.ForkClient.processLine(ForkClient.java:210)\r\n    at org.apache.maven.plugin.surefire.booterclient.output.ForkClient.consumeLine(ForkClient.java:177)\r\n    at org.apache.maven.plugin.surefire.booterclient.output.ThreadedStreamConsumer$Pumper.run(ThreadedStreamConsumer.java:88)\r\n    at java.base/java.lang.Thread.run(Thread.java:834)\r\n```\r\nand here is most of what is written to `faucet-pipeline-spring-boot-autoconfigure/target/surefire-reports/2018-11-27T21-43-36_524.dumpstream`:\r\n```\r\n# Created at 2018-11-27T21:43:37.177\r\nException in thread \"main\" java.lang.reflect.InvocationTargetException\r\n\r\n# Created at 2018-11-27T21:43:37.177\r\n    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\r\n\r\n# Created at 2018-11-27T21:43:37.178\r\n    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\r\n\r\n# Created at 2018-11-27T21:43:37.179\r\n    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\r\n\r\n# Created at 2018-11-27T21:43:37.179\r\n    at java.base/java.lang.reflect.Method.invoke(Method.java:566)\r\n\r\n# Created at 2018-11-27T21:43:37.179\r\n    at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:513)\r\n\r\n# Created at 2018-11-27T21:43:37.180\r\n    at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:525)\r\n\r\n# Created at 2018-11-27T21:43:37.181\r\nCaused by: java.lang.RuntimeException: Class java/lang/UnknownError could not be instrumented.\r\n\r\n# Created at 2018-11-27T21:43:37.181\r\n    at org.jacoco.agent.rt.internal_c13123e.core.runtime.ModifiedSystemClassRuntime.createFor(ModifiedSystemClassRuntime.java:140)\r\n\r\n# Created at 2018-11-27T21:43:37.181\r\n    at org.jacoco.agent.rt.internal_c13123e.core.runtime.ModifiedSystemClassRuntime.createFor(ModifiedSystemClassRuntime.java:101)\r\n\r\n# Created at 2018-11-27T21:43:37.182\r\n    at org.jacoco.agent.rt.internal_c13123e.PreMain.createRuntime(PreMain.java:55)\r\n\r\n# Created at 2018-11-27T21:43:37.182\r\n    at org.jacoco.agent.rt.internal_c13123e.PreMain.premain(PreMain.java:47)\r\n\r\n# Created at 2018-11-27T21:43:37.182\r\n    ... 6 more\r\n\r\n# Created at 2018-11-27T21:43:37.182\r\nCaused by: java.lang.NoSuchFieldException: $jacocoAccess\r\n\r\n# Created at 2018-11-27T21:43:37.182\r\n    at java.base/java.lang.Class.getField(Class.java:2000)\r\n\r\n# Created at 2018-11-27T21:43:37.183\r\n    at org.jacoco.agent.rt.internal_c13123e.core.runtime.ModifiedSystemClassRuntime.createFor(ModifiedSystemClassRuntime.java:138)\r\n\r\n# Created at 2018-11-27T21:43:37.183\r\n    ... 9 more\r\n```\r\n\r\nFrom 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).\r\nI 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?\r\n\r\nI have to say I haven't used java agents usually.\r\nMy 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?\r\n\r\nBut maybe it's just my local setup?"},"comment":{"url":"https://api.github.com/repos/faucet-pipeline/faucet-pipeline-spring-boot-starter/issues/comments/442221335","html_url":"https://github.com/faucet-pipeline/faucet-pipeline-spring-boot-starter/issues/3#issuecomment-442221335","issue_url":"https://api.github.com/repos/faucet-pipeline/faucet-pipeline-spring-boot-starter/issues/3","id":442221335,"node_id":"MDEyOklzc3VlQ29tbWVudDQ0MjIyMTMzNQ==","user":{"login":"tilois","id":4662696,"node_id":"MDQ6VXNlcjQ2NjI2OTY=","avatar_url":"https://avatars3.githubusercontent.com/u/4662696?v=4","gravatar_id":"","url":"https://api.github.com/users/tilois","html_url":"https://github.com/tilois","followers_url":"https://api.github.com/users/tilois/followers","following_url":"https://api.github.com/users/tilois/following{/other_user}","gists_url":"https://api.github.com/users/tilois/gists{/gist_id}","starred_url":"https://api.github.com/users/tilois/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tilois/subscriptions","organizations_url":"https://api.github.com/users/tilois/orgs","repos_url":"https://api.github.com/users/tilois/repos","events_url":"https://api.github.com/users/tilois/events{/privacy}","received_events_url":"https://api.github.com/users/tilois/received_events","type":"User","site_admin":false},"created_at":"2018-11-27T21:20:43Z","updated_at":"2018-11-27T21:20:43Z","author_association":"NONE","body":"Confirmed.\r\n\r\nOh come on! It was as easy as updating the plugin version?!\r\nYou likely saw that my JDK was `openjdk-11.0.1.jdk` in the above log, but here is the output never the less:\r\n```\r\nopenjdk version \"11.0.1\" 2018-10-16\r\nOpenJDK Runtime Environment 18.9 (build 11.0.1+13)\r\nOpenJDK 64-Bit Server VM 18.9 (build 11.0.1+13, mixed mode)\r\n```\r\n\r\nThanks for the very quick support!"}}
{"actor":{"display_login":"tilois"}}