一 打开tomcat配置
二 点击deployment查看Deploy at the server startup中tomcat每次所运行的包是xxxx:war还是其他,如果是xxxx:war包,请更换
点击旁边绿色加号,选择xxxx:war exploded ,然后将xxxx:war点击红色删除掉
三 然后在server中 将"On Update action"、"On frame deactivation"都选择updateclasses and resources
四 搞定,切记!!!!!一定要用Debug模式启动!
昨天整一个idea远程部署,搞得头破血流的,整理一下,免得下次受苦。
在tomcat安装目录/bin/catalina.sh 脚本中添加一下命令,注意双引号之间是传递给JVM的参数,一个-D就是一个KV设置,保险起见每行后面留个空格,因为不知道换行符会不会生效。
用以下命令运行tomcat,不要用startup脚本
菜单栏Tools->Deployment->Configure->左上角+按钮:
输入部署的别名,比如Test,点击OK
按照上图的说明填写对应的资料。
如果是ubuntu系统,SFTP协议是默认启用的,账号密码和SSH登录的一样是主机用户,填完点击Test SFTP connection测试一下。这里踩了一坑,还自己搭FTP服务器,慢的要死。
菜单栏Run->Edit Configurations->左上角+按钮->Tomcat Server->remote:
按照图中的说明填写对应的资料,Tomcat Server Settings中的设置,就使用前面的deploy设置即可。
这里的Application Server设置也踩了一坑,因为是部署到远端的tomcat,我以为是要填写或者映射到服务器tomcat的路径,差点就搭一个smb服务出来。实际上这里是要本机的tomcat环境,用来解决项目编译依赖的,选择你本机安装的tomcat目录即可。
tomcat运行起来之后,默认是在8080端口,但是访问云主机,是无法打开测试页面的,这是因为云主机的防火墙拦截了,要手动打开你需要的端口。
除了8080以外,还有jdwp端口,rmi等你需要的端口都要打开,不用再关掉。出连接错误了,就看看是不是防火墙设置问题。
我买的是阿里云主机,其他的大概也一样。云主机有一个随机的id和一个固定的内部ip,它是通过/etc/hosts来配置的。在云主机上部署tomcat不知道为啥要去解析id对应的主机,如果解析失败就无法启动。如果报这个错误,用以下命令恢复主机映射即可。
ip地址是你云主机的内部地址,iZXXXZ是报错的主机id。就是这玩意折腾了我半宿,最后找阿里云客服给的解决方案。
配置完后使用run直接部署服务或者debug,在本地的虚拟机上是可以的,但是在云主机上,就回报java rmi 连接超时,查看防火墙的端口1099是开放的,换Idea的rmi端口也不行。
这个没找到解决办法,只能在部署、调试的时候把tcp端口都打开,完事再关掉了。如果是正式上线,就想办法手动拷贝吧。
假如要调试一个web应用,需要在tomcat或者JBOSS环境下调试,如果使用eclipse会变得非常的复杂和繁琐, 尽管也可以实现集成DEBUG环境,那么首先我们需要下载myeclipse插件,需要安装m2e插 件,需要配置很多东西,而且至于maven于myeclipse的兼容性我本人没有试过,调试起来是不是方便我也不得而知。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)