Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server

时间:2023-01-18 21:52:37

1、下载Jetty

下载地址:http://www.eclipse.org/jetty/download.html
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server

2、在windows上运行jetty

一、将下载的jetty解压到D:\installed,最终可以看到的内容如下:
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server

二、进入D:\installed\jetty-distribution-9.4.7.v20170914\demo-base目录,然后shift + 鼠标右键 ==>”在此处打开命令行窗口”,输入以下命令:

java -jar ../start.jar

Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server

jetty的默认端口也是8080,在浏览器中输入:
http://localhost:8080/,显示的效果如下:
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server

三、改变jetty的启动端口,比如将默认端口改成8888,输入以下命令:
java -jar ../start.jar jetty.port=8888
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server
浏览器中输入http://localhost:8888/
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server

同样,还可以修改jetty_home中的start.ini中的jetty的默认端口,比如我修改成了9999。
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server

直接在jetty_home点击start.jar后访问的效果是:
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server

上面的现象其实是正确的

3、IDEA中配置Jetty

一、创建Jetty的web项目
二、配置Jetty
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server
进行配置
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server

勾选mod
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server

选择要部署的项目
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server

如果在执行项目的时候,出现JVM的已经Bind了,不一定是Jetty默认端口被占用,有可能是JMX的端口被占用了,所以在配置项目的时候,要对JMX的端口进行修改。把之前的1099改成其它的值,比如:
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server

修改IDEA中默认使用的浏览器,然后最后自动弹出页面,效果如下:
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server

最后:window下查看端口是否被占用的命令是:
netstat -ano | findstr “8080” (这个在CMD窗口中进行输入)

4、Web项目中配置Jetty的maven插件

找到web项目的pom.xml,输入以下内容:

<build>
<finalName>jetty-demo</finalName>

<plugins>
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>9.4.7.v20170914</version>
<configuration>
<scanIntervalSeconds>10</scanIntervalSeconds>
<!--
通过下面的配置可以指定项目的contextPath的值,即访问的项目名称,
如果不指定,默认的访问名称是/

war,这个可以指定war最终生成的位置,以及war的名称
-->

<webApp>
<contextPath>/jetty-demo</contextPath>
<war>${project.basedir}/target/${project.build.finalName}.war</war>

</webApp>
</configuration>
</plugin>
</plugins>
</build>

进入磁盘pom.xml所在位置,打开CMD窗口,分别输入以下命令,然后看浏览器上的显示效果:

mvn jetty:run
mvn jetty:run-war

Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server

Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server

分别在浏览器上输入:
http://localhost:8080/jetty-demo/
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server

同样可以将jetty-demo.war放到jetty-distribution-9.4.7.v20170914\webapps中,然后点击jetty-distribution-9.4.7.v20170914\start.jar,然后访问浏览器:
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server

5、Eclipse下Jetty配置

一、打开Eclipse,然后安装Jetty插件
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server
二、然后在find的输入框中输入jetty,点击GO,然后选择第一个列表中的内容,然后点击Install,安装完成后重新启动Eclipse
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server
三、选中项目右击–Run As
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server
四、进行Jetty的配置
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server
五、最后点击Run As–》Run with jetty,就可以运行项目了。
看浏览器中的效果
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server

6、通过Java代码,运行Jetty

一、创建项目,项目目录如下:
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server

二、编写pom文件

<?xml version="1.0" encoding="UTF-8"?>
<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.toto.demo.jetty</groupId>
<artifactId>jetty-test</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>

<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>

<!-- Jetty。要注意版本,版本匹配不对时,运行Jetty的应用将会报错-->
<dependency>
<groupId>org.eclipse.jetty.aggregate</groupId>
<artifactId>jetty-all</artifactId>
<version>8.0.4.v20111024</version>
</dependency>

<!-- Jetty Webapp -->
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-webapp</artifactId>
<version>8.0.4.v20111024</version>
</dependency>

<!--下面一句必须加上,否则在解析jsp的时候将会报错-->
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-jsp</artifactId>
<version>9.2.22.v20170606</version>
</dependency>
</dependencies>

<build>
<finalName>jetty-test</finalName>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>
</project>

三、编写JettyStart代码

package com.toto.jetty;

import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.webapp.WebAppContext;


public class JettyStart {

public static void main(String[] args) throws Exception{
int port = 8888;
Server server = new Server(port);
WebAppContext context = new WebAppContext();
context.setContextPath("/");
context.setResourceBase("src/main/webapp");
context.setDescriptor("src/main/webapp/WEB-INF/web.xml");
// context.setDescriptor("./webapp/WEB-INF/web.xml");
// context.setResourceBase("./webapp");// 设置Web内容上下文路径
server.setHandler(context);
server.start();
server.join();
System.out.println("server is start, port is "+port+"............");
}
}

浏览器访问http://localhost:8888/
Jetty在win10上的配置,IDEA中配置Jetty,Maven中配置Jetty插件,Eclipse中配置Jetty插件及其使用,通过java代码内嵌Jetty Server