Open ItsRainingHP opened 9 months ago
Can you post the code which creates the Library
object that's giving the error? And also the part which adds the repositories.
No problem! Here is the relevant portion. Please note: the only change I make when overriding Library is removing the logger messages.
public static void loadDepends() {
RDQ.getInstance().sendLoggerInfo("Getting depends...");
RManager rManager;
if (paper) {
rManager = new RManager_Paper(RDQ.getInstance());
} else {
rManager = new RManager_Bukkit(RDQ.getInstance());
}
rManager.addMavenCentral();
rManager.addJitPack();
loadWebJars(rManager);
RDQ.getInstance().sendLoggerInfo("Dependencies loaded...");
}
private static void loadWebJars(@NotNull RManager rManager) {
Library vue = Library.builder()
.groupId("org.webjars.npm")
.artifactId("vue")
.version("3.3.4")
.resolveTransitiveDependencies(true)
.build();
rManager.loadLibrary(vue);
}
@Override
public void loadLibrary(@NotNull Library library) {
Path file = this.downloadLibrary((Library) Objects.requireNonNull(library, "library"));
if (library.resolveTransitiveDependencies()) {
this.resolveTransitiveLibraries(library);
}
if (library.isIsolatedLoad()) {
this.addToIsolatedClasspath(library, file);
} else {
this.addToClasspath(file);
}
}
Java's nio is throwing the error likely due to the "/" which needs to change to "\\" here:
public TransitiveDependencyCollector(Path saveDirectory) {
this.saveDirectory = saveDirectory;
this.repositorySystemSession = newRepositorySystemSession(repositorySystem);
}
Something like:
public TransitiveDependencyCollector(Path saveDirectory) {
this.saveDirectory = saveDirectory.replace("/", "\\");
this.repositorySystemSession = newRepositorySystemSession(repositorySystem);
}
This seems to be an error with Maven's resolver. For users that run into this issue. Load all the transitive libraries manually using LibraryManager#Builder.
The following error is thrown when using the Transitive Dependency Helper on windows machines. I believe the error is caused by failing to convert to a URI for support across Linux/Windows OS. I could be wrong and input is appreciated!