我是maven的新手,多年来没有触及java,所以如果这非常明显,我很抱歉。
我正在构建一个依赖于apache storm的项目,并且我的项目无法查看库并解析依赖项以将其包含在import backtype.storm.topology.BasicOutputCollector
中。 Eclipse在单词backtype
下面绘制了一条漂亮的红线,告诉我the import cannot be resolved.
在生成项目结构后,我填写了pom.xml
文件并运行mvn package
以获取所有依赖项(成功)和mvn eclipse:eclipse
来构建eclipse项目结构
我的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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.myproj.storm</groupId> <artifactId>storm-experiments</artifactId> <packaging>jar</packaging> <version>1.0-SNAPSHOT</version> <name>storm-experiments</name> <url>http://github.com/myaccount/storm-experiments</url>
<repositories>
<repository>
<id>github-releases</id>
<url>http://oss.sonatype.org/content/repositories/github-releases/</url>
</repository>
<repository>
<id>clojars.org</id>
<url>http://clojars.org/repo</url>
</repository> </repositories>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>storm</groupId>
<artifactId>storm</artifactId>
<version>0.9.0.1</version>
<scope>provided</scope>
</dependency> </dependencies> </project>
为节省空间,生成的.classpath
为here。这是风暴罐的顶部和入口:
<classpathentry kind="src" path="src/test/java" output="target/test-classes" including="**/*.java"/>
<classpathentry kind="src" path="src/main/java" including="**/*.java"/>
<classpathentry kind="output" path="target/classes"/>
<classpathentry kind="var" path="M2_REPO/storm/storm/0.9.0.1/storm-0.9.0.1.jar"/>
我的问题很简单。为什么我不能在没有得到“导入无法解决”问题的情况下将这些依赖项包含在我的项目中。显然我缺少一个步骤,可能与我的类路径有关,但我无法弄清楚那是什么。
谢谢