linux下的脚本与java中的相对路径
背景: linux使用ANT编译java类并部署到Tomcat下,然后使用脚本(deploy.sh)开启 Tomcat,脚本如下: deploy.sh(其绝对路径为:/usr/local/myapp/deploy.sh)
其中各行的意义: (1)关闭tomcat (2)编译java类并部署到tomcat (3)开启tomcat 这里使用的命令都是绝对路径运行的。 问题来了: (1)在项目中安排了log4j的日志输出到myapp.log,其路径写 法:../log/myapp.log;启动服务器的时候在catalina.out中输出错误信息, 说../log/myapp.log没有找到。 (2)在程序中使用了output/files/,程序完成后很难才找到文件,因为其位 置并不像在window下调试时一样,最后使用 find -name output -type d 命令才找到,发现原来这个文件夹所在的位置就是在:/usr/local/myapp/下面 。 倪端初现: 可见,使用脚本开启tomcat时如果以绝对路径的方式去开启的话,那么在程 序中的相对路径就会以脚本的当前目录作为路径的起始点。这样就导致了在文件 的位置上出现变化,使得文件管理出现困难甚至对已有的文件造成破坏。 (编辑:云计算网_宿迁站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |