在子项目中引用pom jar

时间:2014-02-25 22:40:09

标签: java maven

我正在尝试将所有依赖项集中在一个pom中,以便删除冗余。但是,当我尝试将javaee-web-api依赖项放在集中位置时,我的servlet类EventManager.java就不会对其进行解析。

我的问题是:您是否可以在父pom中添加“提供”范围的依赖项并在子项目中引用它?

父 - PROJ

<dependencies>
    <dependency>
        <groupId>com.google.code.gson</groupId>
        <artifactId>gson</artifactId>
        <version>2.2.4</version>
    </dependency>
    <dependency>
        <groupId>javax</groupId>
        <artifactId>javaee-web-api</artifactId>
        <version>6.0</version>
        <scope>provided</scope>
    </dependency>       
</dependencies>        

子-PROJ

<dependencies>
    <dependency>
        <groupId>com.study</groupId>
        <artifactId>poc1</artifactId>
        <version>1.0-SNAPSHOT</version>
        <type>pom</type>
    </dependency>
</dependencies>

EventManager.java(位于子项目中)

package com.study.webstore.event.processor;

import com.study.webstore.event.AnalyticsModel;
import com.study.webstore.util.GenericUtils;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import org.apache.log4j.Logger;

public class EventManager implements Filter {

    private static final Logger log = Logger.getLogger(EventManager.class);

    //some more code

1 个答案:

答案 0 :(得分:0)

您无法声明对类型为pom的工件的依赖关系。您应该将其声明为您的父pom。您的孩子pom将从您的父依赖继承。

你可以看看: