Tagged: Tomcat

Tomcat 设置默认访问项目

方法一:(最简单直接的方法)

删除原 webapps/ROOT 目录下的所有文件,将应用下的所有文件和文件夹复制到ROOT文件夹下。

方法二:

删除原 webapps/ROOT 目录下的所有文件,修改文件“conf/server.xml”,在Host节点下增加如下Context的内容配置:

<Host name="localhost"  appBase="webapps" unpackWARs="true" autoDeploy="true"
    xmlValidation="false" xmlNamespaceAware="false">
    ......
    <Context path="" docBase="C:/apache-tomcat-6.0.32/myapps/bc.war"></Context>
</Host>

注意:

  • path 的值设置为空;
  • 应用不要放到tomcat的webapps目录下(如上述配置是放到自定义的文件夹myapps内的),否则访问时路径很有问题;
  • docBase指定到绝对路径。
    如此设置后重启tomcat,如果docBase指向的是war文件,会自动将war解压到 webapps/ROOT 目录;如果docBase指向的是应用已解压好的目录,如 docBase="C:/apache-tomcat-6.0.32/myapps/bc",tomcat不会生成webapps/ROOT目录(这种情况下之前可以不用删除webapps/ROOT目录,但webapps/ROOT目录内的内容是无法访问的),访问时将直接使用docBase指定的目录。

方法三:

与方法二类似,但不是修改全局配置文件“conf/server.xml”,而是在“conf/Catalina/localhost”目录下增加新的文件"ROOT.xml"(注意大小写哦),文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<Context path="" docBase="C:/apache-tomcat-6.0.32/myapps/bc.war"></Context>

MyEclipse at java.util.jar.Attributes.read(Attributes.java:410)

扯淡的问题.运行tomcat一直报错..

at java.util.jar.Attributes.read(Attributes.java:410)

到处找问题就是解决不了~~~~~

解决方法:(来自百度~)

1、Class-path: 的冒号后面要加一个空格

java.io.IOException: invalid header field异常(tomcat5.5中)
是因为MAINFEST.MF文件的Class-path:后面少了一空格

Manifest-Version: 1.0
Class-Path:

2、Main-Class: 的冒号后面要加一个空格。

java.io.IOException:invalid header field
at java.util.jar.Attributes.read
ar...
...
异常位置省略。
当时我的manifest.mf文件内容为:

Manifest-Version: 1.0
Main-Class:My1
Created-By: 1.6.0_10-rc2 (Sun Microsystems Inc.)

出现这个错误后,我反复看了命令格式和manifest的内容,并没有错误。
后来仔细看了下正确的mf格式,发现Main-Class:My1冒号后面要加一个空格。
正确格式如下:

Manifest-Version: 1.0
Main-Class: My1
Created-By: 1.6.0_10-rc2 (Sun Microsystems Inc.)

3、Manifest-Version: 1.0和Class-Path: 之间不允许有空行。

今天神奇一样的遇到了一个异常:java.io.IOException: invalid header field ,昨天还好好的代码,今天就变成不能运行了。
然后在网上查找了一下,发现原因是由于META-INF下的MANIFEST.MF文件,可是我从来没有动过这个文件啊,根据网上的解决办法,我把原来

Manifest-Version: 1.0

Class-Path:

变成:

Manifest-Version: 1.0
Class-Path:

JSP环境搭建 centos Tomcat 9

软件包下载地址:

JAVA环境安装

yum -y update  # 升级系统
cd /usr/local
wget http://javadl.sun.com/webapps/download/AutoDL?BundleId=111741 -O jre.tar.gz
tar zxvf jre.tar.gz
chown root:root jre1.8.0_66 # 默认的权限貌似不一样

echo "export JAVA_HOME=/usr/local/jre1.8.0_66" >> /etc/profile     # 写入JAVA_HOME
echo "export CLASSPATH=.:%JAVA_HOME%/lib/dt.jar:%JAVA_HOME%/lib/tools.jar" >> /etc/profile # 写入JAVA_CLASSPATH
source /etc/profile  # 立即生效
env |grep JAVA # 查看是否生效
#JAVA_HOME=/usr/local/jre1.8.0_66
#CLASSPATH=.:%JAVA_HOME%/lib/dt.jar:%JAVA_HOME%/lib/tools.jar

ln -s /usr/local/jre1.8.0_66/bin/java /sbin/java # 创建程序快捷方式,否则会提示找不到程序

java -version
#java version "1.8.0_66"
#Java(TM) SE Runtime Environment (build 1.8.0_66-b17)
#Java HotSpot(TM) 64-Bit Server VM (build 25.66-b17, mixed mode)

Tomcat 安装

# 生产环境最好还是Tomcat 7合适!
wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-9/v9.0.0.M1/bin/apache-tomcat-9.0.0.M1.tar.gz
tar zxvf apache-tomcat-9.0.0.M1.tar.gz
mv apache-tomcat-9.0.0.M1 tomcat
/usr/local/tomcat/bin/startup.sh #启动服务器
#Using CATALINA_BASE:   /usr/local/tomcat
#Using CATALINA_HOME:   /usr/local/tomcat
#Using CATALINA_TMPDIR: /usr/local/tomcat/temp
#Using JRE_HOME:        /usr/local/jre1.8.0_66
#Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
#Tomcat started.
/usr/local/tomcat/bin/shutdown.sh # 关闭服务器

Read more