deploy/debug java code on a remote server using Intellij

拟墨画扇 提交于 2019-11-27 20:15:18
CrazyCoder

There is a step by step deployment guide for PhpStorm, but for IntelliJ IDEA it would be almost the same.

Here is the example configuration for deploying a .jar file from artifact subdirectory to the remote server via SFTP into /home/serge/artifact directory:

I'd configure the artifact to produce the executable jar. Then adjust the deployment configuration to deploy the jar to the remote server. Or you can use Maven/Gradle to do the same.

Next, you can configure Remote SSH external tool to run the jar on the server (via java -jar jarname.jar:

Running on the remote server via Tools | External Tools | hello:

To automate the process enable Include in project build for the artifact, enable Automatic upload in Tools | Deployment and enable uploading of external changes in Tools | Deployment | Options.

To debug the code use Remote Debug configuration. Copy the JVM options needed for debug and adjust the options in your remote SSH external tool so that the app is started in debug mode and can accept connections (make sure firewall rules are adjusted to permit the connections on the specified port).

If you need to debug your web application running on remote server you can do it this way:

Deploy your code to remote server. There are several ways to do it:

  • By intergration IDEA with you application server. Go into Settings > Build, Execution, Deployments > Application Servers and add your application server there. You could later use it as deployment target. See documentation.
  • By integration via you building tool, for example, maven have plugins for integration with many app servers. This works well when your build process is complicated.
  • Manually - simple copy build artifacts into target app server machine and deploy manually.

Connect to server in debug mode. To do this you need to create separate Run/ Debug configuration in IDEA. If you have Enterprise Edition you could choose configuration template for your server (e.q. Tomcat Server) and choose server from your Application Servers list. In Community Edition you have to use default Remote configuration instead.

When setup is done, your workflow should be the following:

  1. Make changes into code;
  2. Redeploy it into server (restart it if necessary);
  3. Run your debug configuration;
  4. Access your application on server (via browser for example) to trigger required code for execution;
  5. Debug
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!