2012-12-29 67 views
10

RackSpace Cloud Server Ubuntu-12.04,Intellij Idea-11.1.2,Windows-8,Tomcat-7.0.26,JDK-6。Tomcat Intellij想法:远程部署

在IntelliJ IDEA的,当我尝试我的远程的Tomcat 7服务器时,它运行JSF项目说:

错误运行服务器名:无法连接到IP地址:1099

似乎问题是关于JNDI端口是1099,但我不能激活它我猜。 Tomcat配置是。这样的:

enter image description here

我没试过吗?

设置CATALINA_OPTS或JAVA_OPTS在服务器端使用:

CATALINA_OPTS=-Dcom.sun.management.jmxremote 
-Dcom.sun.management.jmxremote.port=1099 
-Dcom.sun.management.jmxremote.ssl=false 
-Dcom.sun.management.jmxremote.authenticate=false 

JAVA_OPTS=-Dcom.sun.management.jmxremote 
-Dcom.sun.management.jmxremote.port=1099 
-Dcom.sun.management.jmxremote.ssl=false 
-Dcom.sun.management.jmxremote.authenticate=false 

但是这一次没有工作,任何想法?

+0

这些参数用于与JConsole/VisualVM连接到正在运行的应用程序。百分号可能不需要? –

+0

不行不行 –

+0

或者;我关闭从神器选项构建它不需要JNDI端口,但现在我必须把战争爆炸或战争文件放入我的远程服务器,但问题是我应该把它放在哪里? –

回答

14

我的回答我的问题:

远程部署正确的方法是编辑在远程服务器上JAVA_OPTS环境变量。只需输入以下命令:

export JAVA_OPTS="-Dcom.sun.management.jmxremote= 
-Dcom.sun.management.jmxremote.port=1099 
-Dcom.sun.management.jmxremote.ssl=false 
-Dcom.sun.management.jmxremote.authenticate=false" 

如果这不会工作,如果你没有任何成见部署通过IntelliJ IDEA的网站,我有这个问题的解决方案。为了能够在Tomcat下运行你的网站,你可以/应该得到.war文件形式的神器。

它可以在的IntelliJ从项目设置(CTRL + ALT + SHIFT + S)来完成,然后打加号按钮,并添加新的工件(网址:应用程序archieve)

get war file in Intellij

重建神器后,.war文件可以在project-folder\out\artifacts中看到。接下来,你应该把这个文件放到你的tomcat/webapps文件夹中。

例如,如果您使用Tomcat-7,我的意思是存在于/var/lib/tomcat7/webapps中的文件夹。在复制.war file之前,您应将其重命名为ROOT.war。这提供直接访问您的网站http://youripaddress:8080。重新启动Tomcat7服务后,您可以访问该站点。

但还没有完成,您可以远程调试您的项目,就像您正在使用Intellij Idea在本地计算机上调试项目一样。在Idea中打开运行/调试配置,点击加号按钮,必须有Remote。这是调试您的应用程序服务器(如JBoss,Glassfish以及Idea)的项目的方式。输入你的主机和端口号,选择你的项目作为一个模块。

开始调试,因为的IntelliJ说,你应该给出如下参数到您的服务器JVM之前:

JAVA_OPTS="$JAVA_OPTS -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005" 

为了能够做到这一点在Ubuntu和Tomcat的7,修改catalina.sh文件在usr/share/tomcat7文件夹中。我插入了if [ -z "$LOGGING_MANAGER" ]; then行上面的参数。它必须在文件的中间部分。那么你应该可以用Intellij Idea来调试你的项目。

+1

如果您在VM中运行Tomcat,您可能还需要-Djava.rmi.server.hostname = 172.16.33.33(将IP替换为VM IP) – hannson