java.net.URISyntaxException in a library in Netbeans on Mac OS X
I am compiling a Java project on Mac OS X, and I have the following stackTrace when trying to build:
ant -f /Users/hervegirod/Desktop/Java/VirtualCopilot/VirtualCopilot -Dnb.internal.action.name=rebuild clean jar
init:
deps-clean:
Created dir: /Users/hervegirod/Desktop/Java/VirtualCopilot/VirtualCopilot/build
Updating property file: /Users/hervegirod/Desktop/Java/VirtualCopilot/VirtualCopilot/build/built- clean.properties
Deleting directory /Users/hervegirod/Desktop/Java/VirtualCopilot/VirtualCopilot/build
clean:
init:
deps-jar:
Created dir: /Users/hervegirod/Desktop/Java/VirtualCopilot/VirtualCopilot/build
Updating property file: /Users/hervegirod/Desktop/Java/VirtualCopilot/VirtualCopilot/build/built-jar.properties
Created dir: /Users/hervegirod/Desktop/Java/VirtualCopilot/VirtualCopilot/build/classes
Created dir: /Users/hervegirod/Desktop/Java/VirtualCopilot/VirtualCopilot/build/empty
Created dir: /Users/hervegirod/Desktop/Java/VirtualCopilot/VirtualCopilot/build/generated-sources/ap-source-output
Compiling 4 source files to /Users/hervegirod/Desktop/Java/VirtualCopilot/VirtualCopilot/build/classes
error: error reading /Users/hervegirod/Desktop/Java/VirtualCopilot/VirtualCopilot/framework/protoframework.jar; java.net.URISyntaxException: Illegal character in path at index 76: file:/Users/hervegirod/Desktop/Java/VirtualCopilot/VirtualCopilot/framework/\
BUILD FAILED (total time: 1 second)
The exception is when the IDE tries to read a Java library I am using on my project. My project uses Java 11, and I am using a library which was built on Java 8 on Windows 10. I am using the last Netbeans version (12.6) to build my project. If I build the project on Windows and execute it on Mac OS X, I have no problem. The problem is only when I am trying to build it on Mac OS X with this library.
Also I have the same problem on Linux, or with another IDE (IntelliJ Idea). I initially suspected that my library files where not UTF8, but as far as I saw, they were (except if I did not look close enough). Note that I am able to investigate the library, because I am the one who develop it (on Windows).
Does somebody have a clue?
skopisa was right. The reason was this faulty manifest:
Main-Class: org.da.protoframework.model.core.Framework
Class-Path: lib/MDIUtilities-core-LGPL.jar \
lib/MDIUtilities-ui-LGPL.jar \
lib/scriptHelper.jar \
lib/scriptHelperGroovy.jar \
lib/scriptHelperSwing.jar \
lib/groovy-3.0.7-indy.jar \
lib/jna.jar \
lib/jna-platform.jar \
lib/json.jar \
lib/jEditor.jar \
lib/netty-all.jar
Strangely, it worked correctly on Linux or Mac OS X when using the library, but building was impossible because of the backslash character ("").
This version is correct and work correctly on Windows, Linux, and Mac OS X, for both runtime and building a program using this library:
Main-Class: org.da.protoframework.model.core.Framework
Class-Path: lib/MDIUtilities-core-LGPL.jar
lib/MDIUtilities-ui-LGPL.jar
lib/scriptHelper.jar
lib/scriptHelperGroovy.jar
lib/scriptHelperSwing.jar
lib/groovy-3.0.7-indy.jar
lib/jna.jar
lib/jna-platform.jar
lib/json.jar
lib/jEditor.jar
lib/netty-all.jar