package com.acellan.kibihee.quasarhelloworld;
import co.paralleluniverse.fibers.Fiber;
/** * @created 16-NOV-2018 * @author PhilipH */public class QuasarTest {
public QuasarTest() { // default }
public static void main(String[] args) { QuasarTest qt = new QuasarTest(); qt.test(); }
public void test() { new Fiber<Void>(() -> { System.out.println("Hello! I'm a Quasar Fiber!"); }).start(); }}
<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.acellan.kibihee</groupId> <artifactId>QuasarHelloWorld</artifactId> <version>1.0-SNAPSHOT</version> <packaging>jar</packaging> <dependencies> <dependency> <groupId>co.paralleluniverse</groupId> <artifactId>quasar-core</artifactId> <version>0.8.0-SNAPSHOT</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.0</version> <configuration> <release>11</release> <showDeprecation>true</showDeprecation> </configuration> </plugin>
<plugin> <artifactId>maven-dependency-plugin</artifactId> <version>3.1.1</version> <executions> <execution> <id>getClasspathFilenames</id> <goals> <goal>properties</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <!-- Run with "mvn compile maven-dependency-plugin:properties exec:exec" --> <version>1.6.0</version> <configuration> <mainClass>com.acellan.kibihee.quasarhelloworld.QuasarTest</mainClass> <workingDirectory>target/classes</workingDirectory> <executable>C:/Program Files/Java/jdk-11.0.1/bin/java</executable> <arguments> <!-- Turn off before production --> <argument>-Dco.paralleluniverse.fibers.verifyInstrumentation=true</argument>
<!-- Quasar Agent --> <argument>-javaagent:${co.paralleluniverse:quasar-core:jar}</argument>
<!-- Classpath --> <argument>-classpath</argument> <classpath/>
<!-- Main class --> <argument>com.acellan.kibihee.quasarhelloworld.QuasarTest</argument> </arguments> </configuration> </plugin> </plugins> </build> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>11</maven.compiler.source> <maven.compiler.target>11</maven.compiler.target> </properties></project>
<?xml version="1.0" encoding="UTF-8"?><actions> <action> <actionName>debug</actionName> <packagings> <packaging>jar</packaging> </packagings> <goals> <goal>process-classes</goal> <goal>org.codehaus.mojo:exec-maven-plugin:1.6.0:exec</goal> </goals> <properties> <exec.args>-javaagent:C:\Users\PhilipH\.m2\repository\co\paralleluniverse\quasar-core\0.8.0-SNAPSHOT\quasar-core-0.8.0-SNAPSHOT.jar -classpath %classpath com.acellan.kibihee.quasarhelloworld.QuasarTest</exec.args> <exec.executable>java</exec.executable> <jpda.listen>true</jpda.listen> </properties> </action> </actions>
JPDA Listening Start...JPDA Address: PhilipH-PCXXXXPort:12345cd D:\Working\JavaProjects\QuasarGradleProject\QuasarHelloWorld; "JAVA_HOME=C:\\Program Files\\Java\\jdk-11.0.1" cmd /c "\"\"C:\\Program Files\\NetBeans 9.0\\java\\maven\\bin\\mvn.cmd\" -Dexec.args=\"-javaagent:C:\\Users\\PhilipH\\.m2\\repository\\co\\paralleluniverse\\quasar-core\\0.8.0-SNAPSHOT\\quasar-core-0.8.0-SNAPSHOT.jar -classpath %classpath com.acellan.kibihee.quasarhelloworld.QuasarTest\" -Dexec.executable=\"C:\\Program Files\\Java\\jdk-11.0.1\\bin\\java.exe\" -Djpda.listen=true -Djpda.address=12345-Dmaven.ext.class.path=\"C:\\Program Files\\NetBeans 9.0\\java\\maven-nblib\\netbeans-eventspy.jar\" -Dfile.encoding=UTF-8 org.codehaus.mojo:exec-maven-plugin:1.6.0:exec\""Running NetBeans Compile On Save execution. Phase execution is skipped and output directories of dependency projects (with Compile on Save turned on) will be used instead of their jar artifacts.Scanning for projects... ------------------------------------------------------------------------Building QuasarHelloWorld 1.0-SNAPSHOT------------------------------------------------------------------------
--- exec-maven-plugin:1.6.0:exec (default-cli) @ QuasarHelloWorld ---[quasar] ERROR: while transforming jdk/jfr/internal/EventWriter: nulljava.lang.IllegalArgumentException at co.paralleluniverse.asm.ClassReader.<init>(Unknown Source) at co.paralleluniverse.asm.ClassReader.<init>(Unknown Source) at co.paralleluniverse.fibers.instrument.QuasarInstrumentor.instrumentClass(QuasarInstrumentor.java:118) at co.paralleluniverse.fibers.instrument.QuasarInstrumentor.instrumentClass(QuasarInstrumentor.java:88) at co.paralleluniverse.fibers.instrument.JavaAgent$Transformer.transform(JavaAgent.java:195) at java.instrument/java.lang.instrument.ClassFileTransformer.transform(ClassFileTransformer.java:246) at java.instrument/sun.instrument.TransformerManager.transform(TransformerManager.java:188) at java.instrument/sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:563)[quasar] ERROR: while transforming jdk/internal/vm/PostVMInitHook: nulljava.lang.IllegalArgumentException at co.paralleluniverse.asm.ClassReader.<init>(Unknown Source) at co.paralleluniverse.asm.ClassReader.<init>(Unknown Source) at co.paralleluniverse.fibers.instrument.QuasarInstrumentor.instrumentClass(QuasarInstrumentor.java:118) at co.paralleluniverse.fibers.instrument.QuasarInstrumentor.instrumentClass(QuasarInstrumentor.java:88) at co.paralleluniverse.fibers.instrument.JavaAgent$Transformer.transform(JavaAgent.java:195) at java.instrument/java.lang.instrument.ClassFileTransformer.transform(ClassFileTransformer.java:246) at java.instrument/sun.instrument.TransformerManager.transform(TransformerManager.java:188) at java.instrument/sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:563)[quasar] ERROR: while transforming jdk/internal/vm/PostVMInitHook$2: nulljava.lang.IllegalArgumentException
...etc....