Как развернуть веб-программу sparkjava на сервере Linux?

Я написал веб-проект java, используя платформу SparkJava. И у меня есть сервер Linux, я хочу развернуть его на сервере. SparkJava использует сервер причала, должен ли я сначала загрузить сервер причала на сервере Linux?


person L. YanJun    schedule 19.03.2016    source источник


Ответы (2)


Нет необходимости загружать сервер Jetty. Платформа SparkJava имеет встроенный сервер Jetty, поэтому, если вы запускаете свое приложение в виде jar-файла, jar-файлы сервера Jetty уже должны быть там.

У вас есть 2 варианта:

  • Запустите ваше приложение как банку
  • Запустите ваше приложение как войну в контейнере Serlet по вашему выбору. В этом случае вам необходимо загрузить нужный серверный контейнер, например Tomcat.
person k.liakos    schedule 20.03.2016
comment
Как мне запустить приложение как JAR? - person Ethan Hohensee; 11.05.2016
comment
Не берите в голову. Документация Java ясно объясняет это. Для заинтересованных: docs.oracle.com/javase/tutorial/deployment/ jar/run.html - person Ethan Hohensee; 11.05.2016

Если вы используете Maven, вы можете упаковать все зависимости с помощью плагина сборки. Добавьте следующее в файл pom.xml в разделе плагинов:

<plugin>
    <artifactId>maven-assembly-plugin</artifactId>
    <executions>
        <execution>
            <phase>package</phase>
            <goals>
                <goal>attached</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <finalName>name-of-application</finalName>
        <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
        <archive>
            <manifest>
                 <mainClass>Application</mainClass>
            </manifest>
        </archive>
    </configuration>
</plugin>

Запустите компиляцию maven, и у вас будет автономный jar-файл, который вы можете запустить в командной строке:

java -jar name-of-application-jar-with-dependencies.jar

Если вы используете настройки по умолчанию, ваше приложение должно работать по адресу http://localhost:4567.

person Fritz Seitz    schedule 20.03.2018