繁体   English   中英

在什么目录下放置maven项目的java库?

[英]In what directory to put java libraries for maven project?

我发现Maven意味着特定的目录布局。 但我不明白这里: http//maven.apache.org/guides/introduction/introduction-to-the-standard-directory-layout.html应该放置编译和运行我的代码所需的java库。 我认为它们不应放在'src / main / resources'下,因为资源就像图像一样。 将它们放在'src / main / java'下也不正确。 如果我不使用maven,我会将库放在项目的根lib目录中。 但我不认为对于maven项目来说这是对的。 请指教。

UPD:我解决了这个问题。 问题是我为我的源码设置了src.main.myApp而不是main.myApp。 这似乎让maven感到不安。

Maven以与“标准”Java项目不同的方式处理项目依赖项。

您在项目的pom.xml中声明了您依赖的库:

例如

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>your-project</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>war</packaging>

    <name>your-project-web</name>

    <dependencies>
        <dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-mapper-asl</artifactId>
            <version>1.8.5</version>
        </dependency>
    </dependencies>     
</project>

当您使用maven命令构建项目(即mvn install ,它将为您下载依赖项并将它们存储在本地存储库中。

在Maven中,您不会在项目中保留库。 您可以在这些库中指定依赖项,并将它们填充到本地存储库中。 在构建时,如果要打包lib(比如war文件),它们会被拉入目标// WEB-INF / lib。 但总的来说,整个想法不是处理这些库或管理它们,只是为了管理pom文件中的依赖项,而忘记其余的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM