deploy/debug java code on a remote server using Intellij

左心房为你撑大大i 提交于 2019-11-26 11:11:27

问题


I want to run my java code on a remote server for faster speed (The server is very powerful). What I want is to connect my Intellij to that remote server and run my code. But I want to still use the IntelliJ on my local machine (i.e. my laptop).

I found a config section in IntelliJ which is in Default Setting->Build-executation-deployment-> Deployment and there I can set the address of my remote server and username and password. But I don\'t know what to do next.


回答1:


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).

  • remote debug configuration
  • debug external tool configuration
  • proof of working



回答2:


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


来源:https://stackoverflow.com/questions/42380496/deploy-debug-java-code-on-a-remote-server-using-intellij

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!