Search code examples
mavenjarbuildpom.xml

How to add Maven dependency jar file from the lib folder


I am trying to add a jar file to the Maven dependency in my project. The settings.xml is configured to set the repository to a public repository. But this particular jar is not present in that repo. As i have the jar in my lib folder, how can i configure the Maven dependency to take this jar?


Solution

  • Have a look at system dependencies.

    You basically need to define <scope>system</scope>.

    <project>
        ...
        <dependencies>
          <dependency>
            <groupId>javax.sql</groupId>
            <artifactId>jdbc-stdext</artifactId>
            <version>2.0</version>
            <scope>system</scope>
            <systemPath>${java.home}/lib/rt.jar</systemPath>
          </dependency>
        </dependencies>
        ...
    </project>
    

    This is if you don't have your own hosted artifact repository server such as Nexus, Artifactory or Archiva.

    If you do, then as Karl-Heinz suggested, you would be better off placing it there, as it's not good practice to commit binary artifacts to version control.