我目前有一個基於java的maven項目,在運行時,它會啓動jetty服務器並將web應用程序加載到localhost:4567。我想將此應用程序部署到CentOS虛擬機上的服務器,但我不確定從哪裏開始。目前CentOS已經運行了Apache服務器,並安裝了Maven,DB和其他依賴項。無法使用.jar加載導入的類
我將項目打包爲.jar,但目前無法運行.jar文件。當通過命令提示符或IDE運行jar文件時,我得到一個異常「java.lang.NoClassDefFoundError:spark/Route」。
的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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.labfinder</groupId>
<artifactId>labfinder</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>LabFinder</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<repositories>
<repository>
<id>Spark repository</id>
<url>http://www.http://sparkjava.com/nexus/content/repositories/spark/</url>
</repository>
</repositories>
<build>
<plugins>
<plugin>
<!-- Build an executable JAR -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>com.labfinder.Main</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongodb-driver</artifactId>
<version>3.1.0</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.sparkjava</groupId>
<artifactId>spark-core</artifactId>
<version>2.3</version>
</dependency>
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.23</version>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2.1</version>
</dependency>
</dependencies>
據我知道我不應該把星火的Java到類路徑。任何人都知道這裏發生了什麼?
什麼是與啓動虛擬機上的罐子的問題? Jetty默認在端口8080上運行,所以與在端口80上運行的Apache沒有衝突。 – f1sh
我刪除了在Apache上提到的問題,不會導致問題。 –