2017-11-04 217 views
0

我正在用Java构建Vaadin应用程序。这是文件夹结构。无法在远程服务器上运行Vaadin应用程序

- com 
-- my 
--- WebTool 
---- ToolUI.java 
---- View_1.java 
---- View_2.java 

入口点到应用程序是ToolUI.java,并且具有该方法的init()即需要VaadinRequest作为参数。正是在这个文件中,我添加了视图Views_1View_2作为应用程序的视图并在其中添加导航。当我通过Eclipse IDE运行应用程序时,一切运行良好。

现在我有一个要求,我必须在远程服务器上部署此应用程序。所以我创建了一个项目的战争,并通过名称 MyWebTool.war部署在服务器上。

现在,当我尝试用命令

java -jar MyWebTool.war 

它给我的错误运行战争:无法执行战无主清单属性,在MyWebTool.war

我不是当init方法被调用并设置应用程序运行时,确定要添加主类。所以我在MyWebToolUI.java里放了一个空白的主函数,并在pom.xml文件中添加了这个依赖项。

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-war-plugin</artifactId> 
    <version>2.6</version> 
    <configuration> 
     <archive> 
      <manifest> 
       <addClasspath>true</addClasspath> 
       <mainClass>com.my.WebTool.ToolUI</mainClass> 
      </manifest> 
     </archive> 
     <failOnMissingWebXml>false</failOnMissingWebXml> 
     <!-- Exclude an unnecessary file generated by the GWT compiler. --> 
     <packagingExcludes>WEB-INF/classes/VAADIN/widgetsets/WEB-INF/**</packagingExcludes> 
    </configuration> 
</plugin> 

但现在尝试运行它说无法找到或加载主类com.my.WebTool.ToolUI

可以请别人阐明这光的应用程序时?我不知道我是否在这里错过了一些简单的东西,但在这一点上,我被卡住了。非常感谢。

回答

1

对于运行战争打包的应用程序,您将需要servlet container。 Servlet容器提供了运行基于Java的Web应用程序所需的所有基础架构。

执行此操作的最常见方法之一是将deploy战争文件安装到tomcat

+0

非常感谢。这工作! – Kunwar

相关问题