部署 Java web 工程

本文介绍了在SVN上实现自动部署的过程,包括使用Ant进行构建时遇到的问题及解决方案,最终转向Maven构建的过程。同时探讨了Maven配置细节、解决编译错误的方法,以及如何处理Tomcat启动慢的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近想在svn搭建一个自动部署的脚本,大概就是运行脚本自动编译并部署到tomcat下面

开始尝试了ant,最后还是没有通过,主要是使用eclipse插件编译有问题,原因也没找到,大概的配置过程:
1、配置ant

2、工程目录下新建build.xml

<?xml version="1.0"?>
<project name="antwebproject" default="war" basedir=".">
 <property name="classes" value="build/classes"/>
    <property name="build" value="build"/>
    <property name="lib" value="WebContent/WEB-INF/lib"/>
    <!-- 删除build路径-->
    <target name="clean">
       <delete dir="build"/>
    </target>

    <!-- 建立build/classes路径,并编译class文件到build/classes路径下-->
    <target name="compile" depends="clean">
       <mkdir dir="${classes}"/>
       <javac srcdir="src" destdir="${classes}" source="1.8"  
               target="1.8"  debug="on" includeAntRuntime="false" deprecation="true">
       <compilerarg  value="-Xlint:unchecked -Xlint:deprecation" line="-encoding UTF-8"/>
       <classpath>  
                <fileset dir="${lib}">  
                    <include name="*.jar" />  
                </fileset>  
            </classpath>  
       </javac>
    </target>

    <!-- 打war包-->
    <target name="war" depends="compile">
		<war destfile="${build}/antwebproject.war" webxml="WebContent/WEB-INF/web.xml">
           <!-- 拷贝WebRoot下除了WEB-INF和META-INF的两个文件夹-->
   	       <fileset dir="WebContent" includes="**/*.jsp"/>
		       <compilerarg line="-encoding UTF-8 -verbose" />
           <!-- 拷贝lib目录下的jar包-->
           <lib dir="${lib}"/>
           <!-- 拷贝build/classes下的class文件-->
           <classes dir="${classes}"/>
    </war>
    </target>
</project>

但是泛型编译有问题

按照http://www.ithao123.cn/content-8041289.html修改后,还是编译不过,最后就放弃了


后面尝试使用maven来构建

1、下载maven

windos下面修改了






第一个修改主要是修改了maven下载库的目录,第二个是编译的时候报错,需要设置下Jdk版本

另外还需要修改pom.xml

  <build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-compiler-plugin</artifactId>
      <version>3.1</version>
      <configuration>
        <source>1.7</source>
        <target>1.7</target>
        <compilerId>eclipse</compilerId>
      </configuration>
      <dependencies>
        <dependency>
          <groupId>org.codehaus.plexus</groupId>
          <artifactId>plexus-compiler-eclipse</artifactId>
          <version>2.2</version>
        </dependency>
      </dependencies>
    </plugin>
  </plugins>
    <finalName>my-web-app</finalName>
  </build>

要是用eclipse插件编译,要不然也会有很多地方报错 像泛型什么的

最后java代码中不能使用switch(string)这个特性,不知道为什么


最后是一个tomcat启动慢的问题

Tomcat 启动慢
http://blog.csdn.net/chszs/article/details/49494701
)在JVM环境中解决
打开$JAVA_PATH/jre/lib/security/java.security这个文件,找到下面的内容:
securerandom.source=file:/dev/urandom
替换成
securerandom.source=file:/dev/./urandom

除此之外,需要看下webapps目录下是不是项目太多了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值