自己常用的一个java应用程序模板,节省了不少时间!
包含很多脚本:
 
一、启动脚本
 
starup.bat
set APP_LIBDIR=..\lib 

setlocal EnableDelayedExpansion 

set APP_CLASS_PATH=%XFIRE_HOME% 

for %%c in (
"%APP_LIBDIR%\*.jar"
do set APP_CLASS_PATH=!APP_CLASS_PATH!;%%c 

set APP_CLASS_PATH 

java -cp %APP_CLASS_PATH% com.lavasoft.TestMain
 
startup.sh
#!/bin/sh 


programdir=
"." 

program=
"com.lavasoft.TestMain" 


num=$# 

temp=$CLASSPATH 

#setting libs path 

libs=../lib/* 

append(){ 

                temp=$temp
":"$1 


for file in $libs;    
do 

                append $file 

done 

export CLASSPATH=$temp:.:../:$programdir 

export LANG=zh_CN 

res=`ps aux|grep java|grep $program|grep -v grep|awk '{print $2}'` 

if [ -n 
"$res" ] 

     then 

                echo 
"TestMain already running" 

else 

             java -classpath $CLASSPATH    com.lavasoft.TestMain & 

             sleep 3 

                unset res 

                res=`ps aux|grep java|grep $program|grep -v grep|awk '{print $2}'` 

                
if [ -n 
"$res" ] 

                    then 

                         echo 
"TestMain start success" 

                    
else 

                         echo 
"TestMain start error" 

                 fi 

fi
 
二、log4j.properties
 
log4j.rootLogger=INFO,CONSOLE,LOGFILE 


## CONSOLE 

log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender 

log4j.appender.Threshold=INFO 

log4j.appender.CONSOLE.Target=System.out 

log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout 

log4j.appender.CONSOLE.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss } - %-5p %c        %x - %m%n 


## logfile 

log4j.appender.LOGFILE=org.apache.log4j.RollingFileAppender 


log4j.appender.LOGFILE.File=testapp.log 

log4j.appender.LOGFILE.MaxFileSize=10MB 

log4j.appender.LOGFILE.MaxBackupIndex=10 

log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout 

log4j.appender.LOGFILE.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss } -    %-p %c     %x - %m%n
 
三、build.xml
 
<?
xml 
version
="1.0" 
encoding
="UTF-8"
?> 

<
project 
name
="testapp" 
basedir
="." 
default
="compile"
> 


        
<
property 
environment
="env"
/> 

        
<
property 
name
="build.dir" 
value
="./testapp"
/> 

        
<
property 
name
="classes.dir" 
value
="${build.dir}/bin"
/> 

        
<
property 
name
="dist.dir" 
value
="./testapp"
/> 


        
<
path 
id
="classpath"
> 

                
<
fileset 
dir
="./lib"
> 

                        
<
include 
name
="*.jar"
/> 

                
</
fileset
> 

        
</
path
> 


        
<
target 
name
="compile" 
depends
="clean"
> 

                
<
mkdir 
dir
="${build.dir}"
/> 

                
<
mkdir 
dir
="${classes.dir}"
/> 

                
<
mkdir 
dir
="${build.dir}/lib"
/> 

                
<
copy 
toDir
="${classes.dir}" 
failonerror
="false"
> 

                        
<
fileset 
dir
="./src"
> 

                                
<
include 
name
="**/*.*"
/> 

                                
<
exclude 
name
="**/*.java"
/> 

                                
<
exclude 
name
="**/*.log"
/> 

                                
<
exclude 
name
="**/*.iws"
/> 

                                
<
exclude 
name
="**/*.ipr"
/> 

                                
<
exclude 
name
="**/*.iml"
/> 

                        
</
fileset
> 

                
</
copy
> 

                
<
copy 
toDir
="${build.dir}/lib" 
failonerror
="false"
> 

                        
<
fileset 
dir
="./lib"
> 

                        
</
fileset
> 

                
</
copy
> 

                
<
javac 
debug
="on" 

                             
fork
="true" 

                             
encoding
="GBK" 

                             
destdir
="${classes.dir}" 

                             
srcdir
="./src" 

                             
extdirs
="**/test/**" 

                             
classpathref
="classpath"
> 

                
</
javac
> 

        
</
target
> 


        
<
target 
name
="jar" 
depends
="compile"
> 

                
<
mkdir 
dir
="${dist.dir}"
/> 

                
<
copy 
toDir
="${dist.dir}" 
failonerror
="false"
> 

                        
<
fileset 
dir
="./src"
> 

                                
<
include 
name
="*.xml"
/> 

                                
<
include 
name
="*.properties"
/> 

                                
<
include 
name
="*.sh"
/> 

                        
</
fileset
> 

                
</
copy
> 

                
<
jar 
destfile
="${dist.dir}/testapp.jar"
> 

                        
<
fileset 
excludes
="**/Test*.class,**/*.xml,**/*.properties,**/*.log,**/*.sh" 
dir
="${classes.dir}"
/> 

                
</
jar
> 

        
</
target
> 


        
<
target 
name
="clean"
> 

                
<
delete 
dir
="${build.dir}"
/> 

                
<
delete 
dir
="${dist.dir}"
/> 

                
<
delete 
dir
="${build.dir}/lib"
/> 

        
</
target
> 

        
<
target 
name
="all" 
depends
="clean,compile,jar"
/> 

</
project
>