Tomcat 服务器是一个免费的开放源代码的Web 应用服务器。
进入tomcat官网
点击左侧导航栏的Tomcat8。然后下载源码
tomcat使用的是ant,大家一般都是对maven比较熟悉,所以先将ant项目转换成maven项目。
直接在项目下新建一个pom.xml,粘贴以下内容。
<?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>org.apache.tomcat</groupId> <artifactId>Tomcat8.5</artifactId> <name>Tomcat8.5</name> <version>8.5</version> <build> <finalName>Tomcat8.5</finalName> <sourceDirectory>java</sourceDirectory> <testSourceDirectory>test</testSourceDirectory> <resources> <resource> <directory>java</directory> </resource> </resources> <testResources> <testResource> <directory>test</directory> </testResource> </testResources> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.3</version> <configuration> <encoding>UTF-8</encoding> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency> <dependency> <groupId>org.easymock</groupId> <artifactId>easymock</artifactId> <version>3.6</version> </dependency> <dependency> <groupId>ant</groupId> <artifactId>ant</artifactId> <version>1.7.0</version> </dependency> <dependency> <groupId>wsdl4j</groupId> <artifactId>wsdl4j</artifactId> <version>1.6.2</version> </dependency> <!-- https://mvnrepository.com/artifact/javax.xml/jaxrpc --> <dependency> <groupId>javax.xml</groupId> <artifactId>jaxrpc</artifactId> <version>1.1</version> </dependency> <dependency> <groupId>org.eclipse.jdt.core.compiler</groupId> <artifactId>ecj</artifactId> <version>4.5.1</version> </dependency> </dependencies> </project>
启动类是 org.apache.catalina.startup.Bootstrap。
vm参数是 -Duser.language=en -Duser.region=US -Dfile.encoding=UTF-8,这几个参数是为了解决控制台输出乱码。
因为这两个文件夹里缺少几个java文件,会编译不通过。或者,你也可以手动删除报错的java文件。
找到ContextConfig文件,在 configureStart方法中添加一句代码
context.addServletContainerInitializer(new JasperInitializer(), null);
查看控制台有没有报错信息,有就自己复制错误信息去百度。
现在打开浏览器访问 http://localhost:8080/
熟悉的页面出来了,启动源码成功!!!