web在resin中发布

一:将Maven开发的web项目,在resin服务器中打包发布(不借助eclipse

1.将Maven开发的web项目打成war

  1cmd,,进到命令控制台,进到要发布的web项目所在的目录

      如:E:\workspace\sem_new_lv_2012.02.01\sem_new_web

  2)执行命令:mvn  package    ,即可打成 war包。

     打好的包会放到该项目下的target文件夹中。

2. 将打好war包放到resin服务器中的webapps文件夹下,并解压缩。

   (注:若不手动解压缩,直接启动resin,虽然resin会将该war包解压,但运行时会报 

     404异常,原因现在还不太清楚)

3.配置resin.conf文件

  

  1) <web-app  id="/"    root-directory="webapps/sem_new_web-0.0.1-SNAPSHOT" />

     其中id为上下文路径,root-drirectory为应用路径

  2)配置<database></database>标签,加入数据库信息

  3)配置主机和端口号信息

如:<http  address="*"   port="8080">

4.启动resin

   法一:点击resin.exe  可执行文件,即可启动

   法二:命令方式启动

         进到resin服务器中的bin文件夹,

         其下有httpd.sh文件

         输入命令  ./httpd.sh   前台启动

         bin/httpd.sh start  后台启动

         Bin/httpd.sh stop  后台关闭

注:sem系统测试版,在linux系统中,所用resin服务器为:

/home/ fsp/sem/service/resin-pro-3.1.13

 

  

  

  

  二:linux系统常用命令(命令为小写形式)

cd:  进到指定目录      如:cd   /home/fsp   绝对路径

                           cd   sem   相对路径

                           cd   .. 回到上一级 

                           cd   .  当前目录

                           cd   /  进到根目录

ll:  显示当前目录下的内容,详细

ls:  显示当前目录下的内容,简

pwd: 显示当前路径

mkdir :创建目录   如:mkdir test

mv :改名    egmv  test  test2 表示:将test  改名为test2

rm  -rf  test2 删除文件夹, 其中r表删除,f表强制,不提示

rz: 从本地上传文件到linux系统

命令行下输入rz,回车,会弹出上传框,可选择上传文件

上传到当前目录

sz  test2:linux系统中下载文件test2到本地。

   

   点击SecureCRT 菜单栏中的选项——>会话选项——X/Y/Zmodem,可看到文件上传和下载的路径

unzip   xxx.zip   目录tt:  将zip文件解压到tt文件夹(unzip 也可以解压war文件) 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

ps  aux|grep resin  查看运行着的resin进程 

kill  -9  11122  杀死某个进程

tail  -f  filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,方便看到最新

                  的文件内容

tail  -10  filename  查看文件filename10

三:异常

1.

异常:windows系统正常运行的程序,但发布到linux系统后,有一个jsp页面却无法显示,提示文件找不到

原因:linux系统严格区分大小写,windows系统不区分。将该jsp页面的名字的大小写改为和程序中一致即可解决

2.

异常:将打好的war包放到resin中启动时,报有些类文件找不到异常,百度是缺少jar包,

但不直接在resin中发布,借助eclipse时,却没有该问题。

原因:在pom.xml文件里,standar这个jar包引入中,加了<scope>provided</scopse>

provided表示:只在编译时用,不随项目发布。

当去掉<scope>provided</scopse>,即为默认的compile情况,随项目发布,问题解决。

((注:mavenscope标签用法:

在一个maven项目中,如果存在编译需要而发布不需要的jar包,可以用scope标签,值设为provided。如下:

        <dependency>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>jsp-api</artifactId>
            <version>2.1</version>
            <scope>provided</scope>
            <classifier />
        </dependency>

scope的其他参数如下:

· compile
默认的scope,表示 dependency 都可以在生命周期中使用。而且,这些dependencies 会传递到依赖的项目中。适用于所有阶段,会随着项目一起发布

· provided
compile相似,但是表明了dependency JDK或者容器提供,例如Servlet AP和一些Java EE APIs。这个scope 只能作用在编译和测试时,同时没有传递性。????????

· runtime
表示dependency不作用在编译时,但会作用在运行和测试时,如JDBC驱动,适用运行和测试阶段。

· test
表示dependency作用在测试时,不作用在运行时。 只在测试时使用,用于编译和运行测试代码。不会随项目发布。

· system
provided 相似,但是在系统中要以外部JAR包的形式提供,maven不会在repository查找它。))


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值