简体   繁体   中英

deploy/debug java code on a remote server using Intellij

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 (ie 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.

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 :

远程SSH工具

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 (eq 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

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM