Bug 2024103 - Xmvn cannot detect its classpath
Summary: Xmvn cannot detect its classpath
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: plexus-languages
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Mikolaj Izdebski
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-11-17 10:22 UTC by Didik Supriadi
Modified: 2021-11-26 01:21 UTC (History)
4 users (show)

Fixed In Version: plexus-languages-1.0.6-4.fc35
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-11-26 01:21:43 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Didik Supriadi 2021-11-17 10:22:49 UTC
Description of problem:

I have some issues with java packaging i.e. jaxb-stax-ex.
The error comes out after xmvn-4.0.0 is released.

with maven (mvn clean package -X), the building goes well as you can see here:

```
[INFO] --- maven-compiler-plugin:3.8.1:testCompile (default-testCompile) @ stax-ex ---
[DEBUG] Configuring mojo org.apache.maven.plugins:maven-compiler-plugin:3.8.1:testCompile from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1, parent: jdk.internal.loader.ClassLoaders$AppClassLoader@55054057]
[DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-compiler-plugin:3.8.1:testCompile' with basic configurator -->
[DEBUG]   (f) basedir = /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3
[DEBUG]   (f) buildDirectory = /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target
[DEBUG]   (f) compilePath = [/home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/classes, /home/dsupriadi/.m2/repository/jakarta/activation/jakarta.activation-api/1.2.2/jakarta.activation-api-1.2.2.jar, /home/dsupriadi/.m2/repository/jakarta/xml/bind/jakarta.xml.bind-api/2.3.3/jakarta.xml.bind-api-2.3.3.jar]
[DEBUG]   (f) compileSourceRoots = [/home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/src/test/java]
[DEBUG]   (f) compilerArgs = [-Xlint:all]
[DEBUG]   (f) compilerId = javac
[DEBUG]   (f) debug = true
[DEBUG]   (f) failOnError = true
[DEBUG]   (f) failOnWarning = false
[DEBUG]   (f) forceJavacCompilerUse = false
[DEBUG]   (f) fork = false
[DEBUG]   (f) generatedTestSourcesDirectory = /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/generated-test-sources/test-annotations
[DEBUG]   (f) mojoExecution = org.apache.maven.plugins:maven-compiler-plugin:3.8.1:testCompile {execution: default-testCompile}
[DEBUG]   (f) optimize = false
[DEBUG]   (f) outputDirectory = /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/test-classes
[DEBUG]   (f) parameters = false
[DEBUG]   (f) project = MavenProject: org.jvnet.staxex:stax-ex:1.8.3 @ /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/pom.xml
[DEBUG]   (f) session = org.apache.maven.execution.MavenSession@7c4fc2bf
[DEBUG]   (f) showDeprecation = false
[DEBUG]   (f) showWarnings = false
[DEBUG]   (f) skipMultiThreadWarning = false
[DEBUG]   (f) source = 9
[DEBUG]   (f) staleMillis = 0
[DEBUG]   (s) target = 9
[DEBUG]   (f) testPath = [/home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/test-classes, /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/classes, /home/dsupriadi/.m2/repository/jakarta/activation/jakarta.activation-api/1.2.2/jakarta.activation-api-1.2.2.jar, /home/dsupriadi/.m2/repository/jakarta/xml/bind/jakarta.xml.bind-api/2.3.3/jakarta.xml.bind-api-2.3.3.jar, /home/dsupriadi/.m2/repository/junit/junit/4.12/junit-4.12.jar, /home/dsupriadi/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar]
[DEBUG]   (f) useIncrementalCompilation = true
[DEBUG]   (f) verbose = false
[DEBUG] -- end configuration --
[DEBUG] Using compiler 'javac'.
[DEBUG] Adding /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/generated-test-sources/test-annotations to test-compile source roots:
  /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/src/test/java
[DEBUG] New test-compile source roots:
  /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/src/test/java
  /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/generated-test-sources/test-annotations
[DEBUG] CompilerReuseStrategy: reuseCreated
[DEBUG] useIncrementalCompilation enabled
[DEBUG] New dependency detected: /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/classes
[INFO] Changes detected - recompiling the module!
[DEBUG] Classpath:
[DEBUG]  /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/test-classes
[DEBUG]  /home/dsupriadi/.m2/repository/junit/junit/4.12/junit-4.12.jar
[DEBUG]  /home/dsupriadi/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar
[DEBUG] Modulepath:
[DEBUG]  /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/classes
[DEBUG]  /home/dsupriadi/.m2/repository/jakarta/activation/jakarta.activation-api/1.2.2/jakarta.activation-api-1.2.2.jar
[DEBUG]  /home/dsupriadi/.m2/repository/jakarta/xml/bind/jakarta.xml.bind-api/2.3.3/jakarta.xml.bind-api-2.3.3.jar
[DEBUG] Source roots:
[DEBUG]  /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/src/test/java
[DEBUG]  /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/generated-test-sources/test-annotations
[DEBUG] Command line options:
[DEBUG] -d /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/test-classes -classpath /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/test-classes:/home/dsupriadi/.m2/repository/junit/junit/4.12/junit-4.12.jar:/home/dsupriadi/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar: --module-path /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/classes:/home/dsupriadi/.m2/repository/jakarta/activation/jakarta.activation-api/1.2.2/jakarta.activation-api-1.2.2.jar:/home/dsupriadi/.m2/repository/jakarta/xml/bind/jakarta.xml.bind-api/2.3.3/jakarta.xml.bind-api-2.3.3.jar: -sourcepath /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/src/test/java:/home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/generated-test-sources/test-annotations: -s /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/generated-test-sources/test-annotations -g -nowarn -target 9 -source 9 -Xlint:all --patch-module org.jvnet.staxex=/home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/classes:/home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/src/test/java:/home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/generated-test-sources/test-annotations: --add-reads org.jvnet.staxex=ALL-UNNAMED
[WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. build is platform dependent!
[DEBUG] incrementalBuildHelper#beforeRebuildExecution
[INFO] Compiling 2 source files to /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/test-classes
[DEBUG] incrementalBuildHelper#afterRebuildExecution
[INFO]
[INFO] --- maven-surefire-plugin:3.0.0-M3:test (default-test) @ stax-ex ---

but with xmvn (/usr/bin/python3 /usr/share/java-utils/mvn_build.py --xmvn-javadoc -X), it cannot detect its classpath:

[INFO] --- maven-compiler-plugin:3.8.1:testCompile (default-testCompile) @ stax-ex ---
[DEBUG] Configuring mojo org.apache.maven.plugins:maven-compiler-plugin:3.8.1:testCompile from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-compiler-plugin:3.8.1, parent: jdk.internal.loader.ClassLoaders$AppClassLoader@55054057]
[DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-compiler-plugin:3.8.1:testCompile' with basic configurator -->
[DEBUG]   (f) basedir = /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3
[DEBUG]   (f) buildDirectory = /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target
[DEBUG]   (f) compilePath = [/home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/classes, /usr/share/java/jakarta-activation/jakarta.activation-api.jar, /home/dsupriadi/.m2/repository/jakarta/xml/bind/jakarta.xml.bind-api/2.3.3/jakarta.xml.bind-api-2.3.3.jar]
[DEBUG]   (f) compileSourceRoots = [/home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/src/test/java]
[DEBUG]   (f) compilerArgs = [-Xlint:all]
[DEBUG]   (f) compilerId = javac
[DEBUG]   (f) debug = true
[DEBUG]   (f) failOnError = true
[DEBUG]   (f) failOnWarning = false
[DEBUG]   (f) forceJavacCompilerUse = false
[DEBUG]   (f) fork = false
[DEBUG]   (f) generatedTestSourcesDirectory = /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/generated-test-sources/test-annotations
[DEBUG]   (f) mojoExecution = org.apache.maven.plugins:maven-compiler-plugin:3.8.1:testCompile {execution: default-testCompile}
[DEBUG]   (f) optimize = false
[DEBUG]   (f) outputDirectory = /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/test-classes
[DEBUG]   (f) parameters = false
[DEBUG]   (f) project = MavenProject: org.jvnet.staxex:stax-ex:1.8.3 @ /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/pom.xml
[DEBUG]   (f) session = org.apache.maven.execution.MavenSession@3d6a6bee
[DEBUG]   (f) showDeprecation = false
[DEBUG]   (f) showWarnings = false
[DEBUG]   (f) skipMultiThreadWarning = false
[DEBUG]   (f) source = 9
[DEBUG]   (f) staleMillis = 0
[DEBUG]   (s) target = 9
[DEBUG]   (f) testPath = [/home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/test-classes, /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/classes, /usr/share/java/jakarta-activation/jakarta.activation-api.jar, /home/dsupriadi/.m2/repository/jakarta/xml/bind/jakarta.xml.bind-api/2.3.3/jakarta.xml.bind-api-2.3.3.jar]
[DEBUG]   (f) useIncrementalCompilation = true
[DEBUG]   (f) verbose = false
[DEBUG] -- end configuration --
[DEBUG] Using compiler 'javac'.
[DEBUG] Adding /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/generated-test-sources/test-annotations to test-compile source roots:
  /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/src/test/java
[DEBUG] New test-compile source roots:
  /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/src/test/java
  /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/generated-test-sources/test-annotations
[DEBUG] CompilerReuseStrategy: reuseCreated
[DEBUG] useIncrementalCompilation enabled
[WARNING] Can't extract module name from test-classes: null
[DEBUG] New dependency detected: /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/classes
[INFO] Changes detected - recompiling the module!
[DEBUG] Classpath:
[DEBUG] Modulepath:
[DEBUG]  /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/classes
[DEBUG]  /usr/share/java/jakarta-activation/jakarta.activation-api.jar
[DEBUG]  /home/dsupriadi/.m2/repository/jakarta/xml/bind/jakarta.xml.bind-api/2.3.3/jakarta.xml.bind-api-2.3.3.jar
[DEBUG] Source roots:
[DEBUG]  /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/src/test/java
[DEBUG]  /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/generated-test-sources/test-annotations
[DEBUG] Command line options:
[DEBUG] -d /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/test-classes --module-path /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/classes:/usr/share/java/jakarta-activation/jakarta.activation-api.jar:/home/dsupriadi/.m2/repository/jakarta/xml/bind/jakarta.xml.bind-api/2.3.3/jakarta.xml.bind-api-2.3.3.jar: -sourcepath /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/src/test/java:/home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/generated-test-sources/test-annotations: -s /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/generated-test-sources/test-annotations -g -nowarn -target 9 -source 9 -Xlint:all --patch-module org.jvnet.staxex=/home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/classes:/home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/src/test/java:/home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/generated-test-sources/test-annotations: --add-reads org.jvnet.staxex=ALL-UNNAMED
[WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. build is platform dependent!
[DEBUG] incrementalBuildHelper#beforeRebuildExecution
[INFO] Compiling 2 source files to /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/test-classes
[DEBUG] incrementalBuildHelper#afterRebuildExecution
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
This MIGHT be the reason why so many packages are FTBFS (?)

I have to do this workaround for this compilation error:
https://src.fedoraproject.org/rpms/jaxb-stax-ex/blob/rawhide/f/jaxb-stax-ex.spec#_38-56
https://src.fedoraproject.org/rpms/xmlstreambuffer/blob/rawhide/f/xmlstreambuffer.spec#_37-55


Version-Release number of selected component (if applicable):
4.0.0-1 (f35), 4.0.0-4 (rawhide)

How reproducible:
Always

Steps to Reproduce:
1. `git clone https://src.fedoraproject.org/rpms/jaxb-stax-ex.git`
2. delete my workaround (in this case, line 38 - line 56)
3. run `fedpkg prep`
4. change dir to jaxb-stax-ex-%{version}
5. to see the code build with maven, run `mvn clean package -X` (don't forget to run `mvn clean` after it builds)
6. to see the code build with xmvn, run `/usr/bin/python3 /usr/share/java-utils/mvn_build.py --xmvn-javadoc -X`

Actual results:
as you can see, in maven:
[DEBUG] Classpath:
[DEBUG]  /home/dsupriadi/Fedora-scm/jaxb-stax-ex/jaxb-stax-ex-1.8.3/target/test-classes
[DEBUG]  /home/dsupriadi/.m2/repository/junit/junit/4.12/junit-4.12.jar
[DEBUG]  /home/dsupriadi/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar

while in xmvn:
[DEBUG] Classpath:

Expected results:
xmvn should detect the Classpath like maven.

Additional info:

Comment 1 Mikolaj Izdebski 2021-11-17 10:26:57 UTC
Moving to plexus-languages component. This is not a bug in XMvn.
Upstream links:
https://github.com/codehaus-plexus/plexus-languages/issues/70
https://issues.apache.org/jira/browse/SUREFIRE-1897

Comment 2 Mikolaj Izdebski 2021-11-17 10:34:21 UTC
Pull request: https://src.fedoraproject.org/rpms/plexus-languages/pull-request/4

Comment 3 Mikolaj Izdebski 2021-11-17 11:03:02 UTC
PR was merged.

Comment 4 Mikolaj Izdebski 2021-11-17 11:08:24 UTC
Build with the fix was built for rawhide.
You can wait for it to appear in build repo with command: koji wait-repo f36-build --build plexus-languages-1.0.6-4.fc36
Then build your package in Koji or in mock with --enablerepo local

Comment 5 Fedora Update System 2021-11-17 11:10:09 UTC
FEDORA-2021-4d20858fb2 has been submitted as an update to Fedora 35. https://bodhi.fedoraproject.org/updates/FEDORA-2021-4d20858fb2

Comment 6 Didik Supriadi 2021-11-17 11:12:45 UTC
Thank you

Comment 7 Fedora Update System 2021-11-18 04:45:02 UTC
FEDORA-2021-4d20858fb2 has been pushed to the Fedora 35 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2021-4d20858fb2`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2021-4d20858fb2

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 8 Fedora Update System 2021-11-26 01:21:43 UTC
FEDORA-2021-4d20858fb2 has been pushed to the Fedora 35 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.