2017-05-03 74 views
0

我从这个链接下载了exoplatform的日历:https://github.com/exoplatform/calendar,我试图通过命令mvn compile war:war来生成它的战争。如果我运行mvn包或mvn安装它工作正常,但是当我添加战争:战争,编译失败。Maven错误 - 无法找到符号 - 多模块项目

下面是错误:

[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[48,38] package org.exoplatform.calendar.model does not exist 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[49,40] package org.exoplatform.calendar.service does not exist 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[50,40] package org.exoplatform.calendar.service does not exist 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[51,40] package org.exoplatform.calendar.service does not exist 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[52,40] package org.exoplatform.calendar.service does not exist 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[53,40] package org.exoplatform.calendar.service does not exist 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[54,40] package org.exoplatform.calendar.service does not exist 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[55,40] package org.exoplatform.calendar.service does not exist 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[56,40] package org.exoplatform.calendar.service does not exist 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[57,40] package org.exoplatform.calendar.service does not exist 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[58,40] package org.exoplatform.calendar.service does not exist 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[59,40] package org.exoplatform.calendar.service does not exist 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[115,18] cannot find symbol 
[ERROR] symbol: class CalendarService 
[ERROR] location: class org.exoplatform.webservice.cs.calendar.CalendarWebservice 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[116,11] cannot find symbol 
[ERROR] symbol: class ExtendedCalendarService 
[ERROR] location: class org.exoplatform.webservice.cs.calendar.CalendarWebservice 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[120,17] cannot find symbol 
[ERROR] symbol: class CalendarService 
[ERROR] location: class org.exoplatform.webservice.cs.calendar.CalendarWebservice 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[134,29] cannot find symbol 
[ERROR] symbol: class ExtendedCalendarService 
[ERROR] location: class org.exoplatform.webservice.cs.calendar.CalendarWebservice 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[330,49] cannot find symbol 
[ERROR] symbol: class CalendarEvent 
[ERROR] location: class org.exoplatform.webservice.cs.calendar.CalendarWebservice 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[330,72] cannot find symbol 
[ERROR] symbol: class FeedData 
[ERROR] location: class org.exoplatform.webservice.cs.calendar.CalendarWebservice 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[630,39] cannot find symbol 
[ERROR] symbol: class CalendarSetting 
[ERROR] location: class org.exoplatform.webservice.cs.calendar.CalendarWebservice 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/webservice/cs/calendar/CalendarWebservice.java:[630,67] cannot find symbol 
[ERROR] symbol: class CalendarEvent 
[ERROR] location: class org.exoplatform.webservice.cs.calendar.CalendarWebservice 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/calendar/ws/CalendarRestApi.java:[31,1] package org.exoplatform.calendar.service does not exist 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/calendar/ws/CalendarRestApi.java:[32,40] package org.exoplatform.calendar.service does not exist 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/calendar/ws/CalendarRestApi.java:[33,49] package org.exoplatform.calendar.service.Calendar does not exist 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/calendar/ws/CalendarRestApi.java:[34,45] package org.exoplatform.calendar.service.impl does not exist 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/calendar/ws/bean/CategoryResource.java:[22,40] package org.exoplatform.calendar.service does not exist 
[ERROR] .../calendar-develop/calendar-webservice/src/main/java/org/exoplatform/calendar/ws/bean/CategoryResource.java:[33,33] cannot find symbol 
[ERROR] symbol: class EventCategory 
[ERROR] location: class org.exoplatform.calendar.ws.bean.CategoryResource 

主要POM:https://drive.google.com/file/d/0BwWIlGx_c4cXM3puSVY2YTlDWE0/view?usp=sharing

返回总是返回错误之一:由于堆栈溢出焦炭https://drive.google.com/file/d/0BwWIlGx_c4cXWlptTkp0VF95YlU/view?usp=sharing

我把他们安置在谷歌驱动器限制。

我已经尝试了堆栈溢出的解决方案,比如检查执行mvn clean install的依赖项,但是每当我添加war时:war它会返回这些错误。

任何人都可以帮助我吗?

+1

使用'mvn install'或'mvn package'是构建WAR的正确方法。你为什么认为你需要单独运行'mvn war:war'? –

+0

Ok @SteveC我尝试了你所说的话,尽管昨天尝试了它并且没有工作,但今天它产生了一场战争,并且它的行为也相应地发生了。谢谢 – user2934164

+0

你结账了哪个分行?或者你自己添加了'maven-war-plugin'配置吗? 'calendar-webservice'模块旨在成为'calendar-webapp'中包含的'jar',它是构建为WAR的实际Web应用程序。 –

回答

0

是的。调用战争目标的正确方法是:

mvn compile war:war 

现在,你仍然可以看到错误,看来,有可能是一个项目到另一个的依赖。而且,由于无法在本地存储库中找到依赖项(因为您尚未在本地存储库中安装该依赖项),因此无法在类路径中添加依赖项,从而导致错误。

+0

这不是你如何构建WAR文件。当包装在pom.xml中设置为'war'时,Maven会自动构建一个WAR文件。 –

+0

是的。同意。但正如问题所有人问到的那样,我根据自己的意愿给出了答案。 – Shinchan