tomcat启动时出现Error starting static Resources 错误

    因为准备进行网站的第二版改版了,但是在改版期间,第一版的维护还要继续,所以今天把tomcat和项目复制了一份,这样分两个版本来运行,但是复制的项目和tomcat,在启动时出现了 Error starting static Resources 的错误,怎么回事?后面去搜索了一下,找到了类似的情况如下:

严重: Error starting static Resources java.lang.IllegalArgumentException:/webapps does not exist or is not a readable directory
其实是在删除了tomcat的webapps下的一个工程后,有些东西没删完全,出现“严重:Error starting static Resources错误”,提示java.lang.IllegalException异常,出现这种情况的原因在于,删除的时候一些配置等没有完全删除。解决方法如下:
1、把conf/server.xml配置文件中的与刚删除的工程的相关连接配置删除; 2、把work\Catalina\localhost文件夹下的与删除工程的文件夹删除;如果不知道哪个才是与删除项目相关的文件夹,把work目录下的文件夹全部删除也可以,不会影响其他工程,在再次运行其他项目时,会自动重建; 3、删除conf\Catalina\localhost下的与删除工程相关的配置文件,全部删除也可。
    以上的解释和解决方法都不错,各位可以试一下这些方法,如果还不能解决,请往下看,因为我用了上面的方法也是还不能解决。


    尝试了好久,发现解决不了,后面认真看了一下反馈回来的信息,发现它指向的目录还是我旧版本项目的目录,但是我旧版本项目的目录已经移动到其他地方了,但是我也改了server.xml的配置了啊,不起作用?究竟在哪里错了?连配置修改了都不起作用?

    后面我想,难道是在环境变量里面?我果断去查看了一下环境变量,发现环境变量CATALINA_HOME指向了就版本的tomcat(我的旧版本tomcat目录是 e:\tomcat,而新版本的是d:\tomcat),为什么这个环境变量会使得新的tomcat读取就tomcat的配置呢?那是因为这个环境变量起到指引的作用,从bin\startup.bat这个文件就可以看出来了。startup.bat文件里面开始的时候就有这样的代码:

rem Guess CATALINA_HOME if not defined
set "CURRENT_DIR=%cd%"
if not "%CATALINA_HOME%" == "" goto gotHome
set "CATALINA_HOME=%CURRENT_DIR%"
if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome
cd ..
set "CATALINA_HOME=%cd%"
cd "%CURRENT_DIR%"

    从代码里面不难看出,首先是会对CATALINA_HOME的判断,如果在环境变量里面设置了这个变量,那么接下来的操作都会指向这个变量下,而我的电脑就设置了这个变量,所以我运行了新的tomcat在启动时(即运行startup.bat文件)还是会对这个变量进行判断,而我设置了这个变量的值是旧版的tomcat,所以新的tomcat又被指引到了旧版本的tomcat了。

    那么直接改变这个变量的值不就行了吗?是可以,但是只是暂时的,如果我要启动旧版本的tomcat,那旧版本的tomcat又被指向了新版的tomcat了。那怎么办?我的解决方法就是直接删除了它,删除这个环境变量,因为从上面的代码可以看出来,程序对CATALINA_HOME进行了判断,如果CATALINA_HOME不存在则 

set "CATALINA_HOME=%CURRENT_DIR%"
 然后再判断,如下:
if exist "%CATALINA_HOME%\bin\catalina.bat" goto okHome

如果目录不对,则返回上一层,在进行设置,设置完成后再返回现在的目录,如下:

cd ..
set "CATALINA_HOME=%cd%"
cd "%CURRENT_DIR%"
这样子下来, CATALINA_HOME就可以设置到了对应的tomcat目录。

    解决之后,测试一下两个tomcat的启动,经测试,两个tomcat都可以成功运行,呵呵,问题解决了,记录下来。






转载于:https://my.oschina.net/tearlight/blog/151269

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值