扩展外部抽象类的Spring控制器抛出classNotFoundException

时间:2015-01-02 05:24:25

标签: java spring maven classpath

所以我有一个看起来像的弹簧控制器:

@Controller // the org.springframework.stereotype.Controller
@RequestMapping("/test")
public class TestController extends BaseController {
    ...
}

这很好用。但是,当我尝试重构代码时,要将BaseController移动到外部项目" common",项目构建将失败并使用followint stacktrace:

SEVERE: Servlet /mee threw load() exception
java.io.FileNotFoundException: class path resource [ca/wherego/common/controllers/BaseController.class] cannot be opened because it does not exist
    at org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:157)
    at org.springframework.core.type.classreading.SimpleMetadataReader.<init>(SimpleMetadataReader.java:49)
    at org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:80)

我尝试了两种使用外部项目的方法:

1)让maven将其用作:

<dependency>
    <groupId>my.api</groupId>
    <artifactId>common</artifactId>
    <version>1.0.1</version>
    <scope>system</scope>
    <systemPath>${basedir}/lib/common-1.0.1.jar</systemPath>
</dependency>

并将maven放在正确的文件夹中(我没有私有maven版本,因此我无法在使用其他公共maven依赖项时正确上传它。)

2)我试图使用&#34;普通&#34;将project作为构建路径中的项目依赖项。

然而,没有一种方法可行..我错过了什么吗?谢谢!

0 个答案:

没有答案