You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Terrien Jean-Yves (JIRA)" <ji...@apache.org> on 2018/04/24 17:45:00 UTC
[jira] [Created] (MNG-6400) can not work with a system dependency
on a unix / mac / windows project
Terrien Jean-Yves created MNG-6400:
--------------------------------------
Summary: can not work with a system dependency on a unix / mac / windows project
Key: MNG-6400
URL: https://issues.apache.org/jira/browse/MNG-6400
Project: Maven
Issue Type: Bug
Components: Dependencies
Affects Versions: 3.5.3
Environment: Windows 07
Reporter: Terrien Jean-Yves
the sapjco3.jar and sapIdoc3.jar jars can not be renamed.
to work with you have to use an addiction system
however, a unix / windows project can not have an identical absolute path on both systems.
in previous versions of maven you can set properties in .m2 / settings.xml <sapidoc3> and <spajco3> and use <scope> system </ scope>
<SystemPath> $ \{sapidoc3} </ systemPath>
a warnning will be displayed.
on version 3.5.3 it is an error.
But that's not all because even putting the system dependency with an absolute path the jar is not found with the correct name
<dependency>
<groupId>de.sap</groupId>
<artifactId>sapjco3</artifactId>
<version>3.0.0</version>
<scope>system</scope>
<systemPath>D:/project-ati/libs/libsap/sapjco3.jar</systemPath>
</dependency>
JCO3 code
protected boolean registerNativeMethods(Class<?> clazz){
if(!initializedDLL){
try{
JCoRuntime.nativeLibraryPath = loadLibrary("sapjco3");
initializedDLL = true;
}catch(UnsatisfiedLinkError arg2){
JCoRuntime.nativeLibraryPath = "not loaded, caused by " + arg2.toString();
arg2.printStackTrace();
throw arg2;
}
}
return true;
}
java.lang.UnsatisfiedLinkError: no sapjco3 in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1865)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1122)
at com.sap.conn.jco.rt.DefaultJCoRuntime.loadLibrary(DefaultJCoRuntime.java:444)
The first sap-schema-plugin is a project with sap dependencies defined by an absolute path or property. it compiles well.
the second project use this plugin.
if the plugin project is compiled whith properties
=> error absolute pah is ${sapjco3}
if the plugin project is compiled with absolute path
=> java.lang.UnsatisfiedLinkError: no sapjco3 in java.library.path
the same project without change with maven 3.3.9 works perfectly
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)