我正在尝试将所有依赖项集中到pom中以消除冗余。但是,当我尝试将javaee-web-api
依赖项放在一个集中位置时,我的 servlet 类 EventManager.java
不会解析它。
我的问题是:您能否将具有"提供"范围的依赖项放在父 pom 中并在子项目中引用它?
父项目项目
<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>
儿童项目-项目
<dependencies>
<dependency>
<groupId>com.study</groupId>
<artifactId>poc1</artifactId>
<version>1.0-SNAPSHOT</version>
<type>pom</type>
</dependency>
</dependencies>
事件管理器.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
不能声明对 pom 类型的工件的依赖关系。您应该将其声明为父pom。您的子 pom 将从您的父依赖项继承。
你可以看看:
- Maven - 依赖项继承 - 提供
- http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html