module: local install? found. jitpack install? not found.

Answered

https://jitpack.io/#marginallyclever/donatello/1.2.7 builds and installs OK.

Working solution
- clone https://github.com/marginallyclever/donatello tag 1.2.7
- maven clean install 
- clone https://github.com/MarginallyClever/Makelangelo-software/tree/donatello-2
- maven build with IDEA

        <dependency>
            <groupId>com.marginallyclever</groupId>  <!-- not jitpack groupID -->
            <artifactId>donatello</artifactId>
            <version>1.2.7</version>
        </dependency>

 

Does not work if

- clone https://github.com/MarginallyClever/Makelangelo-software/tree/donatello-2

- change pom.xml to use jitpack version, like so:

        <dependency>
            <groupId>com.github.marginallyclever</groupId>  <!-- jitpack -->
            <artifactId>donatello</artifactId>
            <version>1.2.7</version>
        </dependency>

- maven build with IDEA.  Seems fine?

- run.  Exception, module not found.

 

What's going on here?  Anyone have a hint for me, please?

0
7 comments

Hello, Dan!

Thank you for reporting this!

Could you please elaborate on how exactly you are executing the build "maven build with IDEA" (Maven Tool Window, Build Menu, etc.) and share a screenshot of the Run Configuration you are using to run the app.

Currently then attempting to build Makelangelo-software (donatello-2 branch) I'm getting

java: module not found: com.marginallyclever.donatello

from IDEA Native Build System, IDEA's Maven and Maven started from the OS Command Prompt with the 

		<dependency>
			<groupId>com.marginallyclever</groupId>
			<artifactId>donatello</artifactId>
			<version>1.2.2</version>
		</dependency>

 defined, which suggests there is a Project misconfiguration there.

 

However, for IDEA Native Build System this can be worked around by:

1. Linking the Donatello Project via Maven Tool Window:

2. (Optional) Build → Build  / Rebuild Project

3. The app can be started with an Application Run Configuration:

0

Well… I don't want a work-around because this same problem appears in Github CI Action and without this I can't build a release candidate.

0

Dan Royer As stated in my previous message, the Project does not build for me with pure Maven, so the issue is likely to be outside of IDEA.

Does mvn compile complete successfully in your environment for Makelangelo-software?

0

Yes, it builds with mvn compile.  I have https://github.com/MarginallyClever/NodeGraphCore/ and https://github.com/MarginallyClever/Donatello/ on my system, installed locally.  if I do NOT have them installed locally the jitpack problem happens.

C:\Users\aggra\.jdks\openjdk-21.0.2\bin\java.exe -Dmaven.multiModuleProjectDirectory=C:\Users\aggra\Documents\GitHub\makelangelo-software -Djansi.passthrough=true -Dmaven.home=C:\Users\aggra\.m2\wrapper\dists\apache-maven-3.8.1-bin\2l5mhf2pq2clrde7f7qp1rdt5m\apache-maven-3.8.1 -Dclassworlds.conf=C:\Users\aggra\.m2\wrapper\dists\apache-maven-3.8.1-bin\2l5mhf2pq2clrde7f7qp1rdt5m\apache-maven-3.8.1\bin\m2.conf "-Dmaven.ext.class.path=C:\Program Files\JetBrains\IntelliJ IDEA 2021.3.2\plugins\maven\lib\maven-event-listener.jar" "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2021.3.2\lib\idea_rt.jar=56834:C:\Program Files\JetBrains\IntelliJ IDEA 2021.3.2\bin" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath C:\Users\aggra\.m2\wrapper\dists\apache-maven-3.8.1-bin\2l5mhf2pq2clrde7f7qp1rdt5m\apache-maven-3.8.1\boot\plexus-classworlds-2.6.0.jar;C:\Users\aggra\.m2\wrapper\dists\apache-maven-3.8.1-bin\2l5mhf2pq2clrde7f7qp1rdt5m\apache-maven-3.8.1\boot\plexus-classworlds.license org.codehaus.classworlds.Launcher -Didea.version=2024.1.7 compile
[INFO] Scanning for projects...
[INFO] 
[INFO] ------------------< com.marginallyclever:Makelangelo >------------------
[INFO] Building Makelangelo 7.62.3
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- maven-enforcer-plugin:3.0.0-M3:enforce (enforce-maven) @ Makelangelo ---
[INFO] 
[INFO] --- maven-enforcer-plugin:3.0.0-M3:enforce (enforce-java) @ Makelangelo ---
[INFO] 
[INFO] --- git-commit-id-maven-plugin:5.0.0:revision (get-the-git-infos) @ Makelangelo ---
[INFO] dotGitDirectory C:\Users\aggra\Documents\GitHub\makelangelo-software\.git
[INFO] Collected git.branch with value donatello-2
[INFO] Collected git.commit.id.full with value 73cbb8e154b7864d302541c47a3e06edd658a5bf
[INFO] Collected git.commit.id.abbrev with value 73cbb8e
[INFO] Collected git.dirty with value false
[INFO] Collected git.build.time with value 2025-01-22T09:20:18-0800
[INFO] Collected git.build.version with value 7.62.3
[INFO] including property git.build.version in results
[INFO] including property git.commit.id.full in results
[INFO] including property git.commit.id.abbrev in results
[INFO] including property git.branch in results
[INFO] including property git.build.time in results
[INFO] including property git.dirty in results
[INFO] Writing properties file to [C:\Users\aggra\Documents\GitHub\makelangelo-software\target\classes\git.properties] (for module Makelangelo)...
[INFO] 
[INFO] --- jacoco-maven-plugin:0.8.11:prepare-agent (default) @ Makelangelo ---
[INFO] argLine set to -javaagent:C:\\Users\\aggra\\.m2\\repository\\org\\jacoco\\org.jacoco.agent\\0.8.11\\org.jacoco.agent-0.8.11-runtime.jar=destfile=C:\\Users\\aggra\\Documents\\GitHub\\makelangelo-software\\target\\jacoco.exec
[INFO] 
[INFO] --- maven-resources-plugin:3.2.0:resources (default-resources) @ Makelangelo ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Using 'UTF-8' encoding to copy filtered properties files.
[INFO] Copying 2 resources
[INFO] Copying 75 resources
[INFO] The encoding used to copy filtered properties files have not been set. This means that the same encoding will be used to copy filtered properties files as when copying other filtered resources. This might not be what you want! Run your build with --debug to see which files might be affected. Read more at https://maven.apache.org/plugins/maven-resources-plugin/examples/filtering-properties-files.html
[INFO] 
[INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ Makelangelo ---
[WARNING] *******************************************************************************************************************************************************************************************************************************************************************************************
[WARNING] * Required filename-based automodules detected: [jogl-all-2.5.0.jar, jrpicam-0.2.0.jar, kabeja-0.4.jar, janino-3.1.8.jar, commons-compiler-3.1.8.jar, vecmath-1.5.2.jar, batik-all-1.18.jar, xml-apis-ext-1.3.04.jar]. Please don't publish this project to a public artifact repository! *
[WARNING] *******************************************************************************************************************************************************************************************************************************************************************************************
[INFO] Compiling 1 source file to C:\Users\aggra\Documents\GitHub\makelangelo-software\target\classes
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  8.361 s
[INFO] Finished at: 2025-01-22T09:20:21-08:00
[INFO] ------------------------------------------------------------------------

Process finished with exit code 0
0

Dan Royer Could you please share the exact error message IDEA returns in your environment?

I've run into IDEA not resolving requires com.marginallyclever.donatello line, that occurs on build - this one can be resolved by caches wipe and Project re-import.

There is, however, another one, that occurs on runtime:

Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: com/marginallyclever/nodegraphcore/ThreadPoolScheduler
	at com.marginallyclever.donatello@1.2.7/com.marginallyclever.donatello.Donatello.<init>(Donatello.java:133)
	at com.marginallyclever.donatello@1.2.7/com.marginallyclever.donatello.Donatello.<init>(Donatello.java:136)
	at com.marginallyclever.makelangelo/com.marginallyclever.makelangelo.Makelangelo.createAppWindow(Makelangelo.java:429)
	at com.marginallyclever.makelangelo/com.marginallyclever.makelangelo.Makelangelo.run(Makelangelo.java:144)
	at com.marginallyclever.makelangelo/com.marginallyclever.makelangelo.Makelangelo.lambda$main$7(Makelangelo.java:545)
	at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:773)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Caused by: java.lang.ClassNotFoundException: com.marginallyclever.nodegraphcore.ThreadPoolScheduler
	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
	at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526)
	... 18 more

This one poses a rather interesting discrepancy between Maven's and IDEA's runtime behavior.

ThreadPoolScheduler  only present in nodegraphcore 1.0.28 and is missing from version 1.0.23, both of which are present in the classpath.

Right now it is unclear what causes the discrepancy, I have engaged the R&D Team - we are continuing the investigation.

0

I'm sorry I'm no longer able to reproduce my original bug.  I had previously tried the cache clearing and restarting IDEA.  I have no idea why it appeared or why it's gone.  :( :( :(

0

Dan Royer That makes it even more curious!

We will continue the investigation on our end, please let me know if the issue comes back at any point.

0

Please sign in to leave a comment.