中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

IDEA遠程部署調試Java應用程序的過程是怎樣的

發布時間:2021-10-08 09:42:31 來源:億速云 閱讀:104 作者:柒染 欄目:開發技術

這期內容當中小編將會給大家帶來有關IDEA遠程部署調試Java應用程序的過程是怎樣的,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

    基本概述

    在工作中,我們可能會遇到本地無法連接開發環境數據庫等資源,但又想在本地直接開發、調試。

    這時候就能通過IDEARun on ...功能實現。

    其原理是通過SSH連上遠程服務器,部署應用到遠程服務器后,本地連接上遠程服務器部署的應用。

    PS:這種操作方式比在遠程服務器上搭建代理服務,安全性要高的多得多。

    準備工作

    遠程服務器準備

    安裝JDK
    [root@switch-sz-service-test ~]# yum install -y java-1.8.0-openjdk-devel.x86_64
    
    # 可以看到Java的版本是1.8
    [root@switch-sz-service-test ~]# java -version
    openjdk version "1.8.0_302"
    OpenJDK Runtime Environment (build 1.8.0_302-b08)
    OpenJDK 64-Bit Server VM (build 25.302-b08, mixed mode)
    配置JAVA_HOME
    # 可以看到JAVA_HOME是/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.302.b08-0.el8_4.x86_64
    [root@switch-sz-service-test ~]# find / -name java 
    /etc/pki/ca-trust/extracted/java
    /etc/pki/java
    /etc/alternatives/java
    /etc/java
    /var/lib/alternatives/java
    /usr/bin/java
    /usr/lib/java
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.302.b08-0.el8_4.x86_64/jre/bin/java
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.302.b08-0.el8_4.x86_64/bin/java
    /usr/lib/jvm/java
    /usr/share/bash-completion/completions/java
    /usr/share/java
    [root@switch-sz-service-test ~]# ll /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.302.b08-0.el8_4.x86_64
    total 180
    -rw-r--r-- 1 root root   1522 Jul 22 01:18 ASSEMBLY_EXCEPTION
    drwxr-xr-x 2 root root   4096 Oct  4 00:29 bin
    drwxr-xr-x 3 root root    132 Oct  4 00:29 include
    drwxr-xr-x 4 root root     95 Oct  4 00:29 jre
    drwxr-xr-x 3 root root    144 Oct  4 00:29 lib
    -rw-r--r-- 1 root root  19274 Jul 22 01:18 LICENSE
    drwxr-xr-x 2 root root    204 Oct  4 00:29 tapset
    -rw-r--r-- 1 root root 155003 Jul 22 01:18 THIRD_PARTY_README
    
    # 配置JAVA_HOME
    [root@switch-sz-service-test ~]# vim /etc/profile
    
    # 在最后面添加上如下語句
    JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.302.b08-0.el8_4.x86_64
    export JAVA_HOME
    
    # 可以看到已經配置好了JAVA_HOME了
    [root@switch-sz-service-test ~]# source /etc/profile
    [root@switch-sz-service-test ~]# echo $JAVA_HOME
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.302.b08-0.el8_4.x86_64
    [root@switch-sz-service-test ~]#

    項目準備

    創建一個SpringBoot項目

    使用Spring Initializr創建一個SpringBoot項目,參考項目:springboot-remote-deploy-demo

    IDEA遠程部署調試Java應用程序的過程是怎樣的

    創建一個Controller類
    package com.switchvov.springboot.remote.deploy.demo.controller;
    
    import lombok.extern.slf4j.Slf4j;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.PathVariable;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    /**
     * @author switch
     * @since 2021/10/3
     */
    @RestController
    @RequestMapping("/hello")
    @Slf4j
    public class HelloController {
        @GetMapping("/{name}")
        public String hello(@PathVariable("name") String name) {
            String hello = "hello " + name;
            log.info(hello);
            return hello;
        }
    }
    啟動應用,驗證結果
    package com.switchvov.springboot.remote.deploy.demo;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    @SpringBootApplication
    public class SpringbootRemoteDeployDemoApplication {
        public static void main(String[] args) {
            SpringApplication.run(SpringbootRemoteDeployDemoApplication.class, args);
        }
    }
    $ curl http://127.0.0.1:8080/hello/world
    hello world%

    PS:從如上步驟,可以看到已經成功在本地執行了,接下來就是要讓他遠程部署到服務器上,并且可以調試。

    應用配置

    修改應用配置

    IDEA遠程部署調試Java應用程序的過程是怎樣的

    右鍵點擊SpringbootRemoteDeployDemoApplication類旁邊的啟動符,彈出選項框,點擊Modify Run Configuration...選項,彈出界面如下圖

    創建遠程服務器

    IDEA遠程部署調試Java應用程序的過程是怎樣的

    左鍵點擊Run on選項框,彈出選項框,點擊SSH...選項,彈出界面如下圖

    IDEA遠程部署調試Java應用程序的過程是怎樣的

    輸入服務器地址Host,用戶名Username,點擊Next按鈕,跳轉界面如下圖

    IDEA遠程部署調試Java應用程序的過程是怎樣的

    輸入密碼Password(或者使用密鑰),點擊Next跳轉界面如下圖

    IDEA遠程部署調試Java應用程序的過程是怎樣的

    這一步,主要是驗證是否能登錄上服務器,以及服務器上基本環境是否安裝好,點擊Next跳轉界面如下圖

    Successfully connected to root@120.78.218.44:22
    
    > pwd
    /root
    Command finished with exit code 0
    
    
    Checking rsync connection...
    /usr/bin/rsync -n -e "ssh -p 22 " root@120.78.218.44:
    
    root@120.78.218.44's password: 
    
    
    dr-xr-x---         190 2021/10/04 00:56:11 .
    
    Process finished with exit code 0
    
    
    Starting introspection for Java...
    > echo ${SHELL}
    /bin/bash
    Command finished with exit code 0
    > echo ${JAVA_HOME}
    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.302.b08-0.el8_4.x86_64
    Command finished with exit code 0
    > java -version
    openjdk version "1.8.0_302"
    OpenJDK Runtime Environment (build 1.8.0_302-b08)
    OpenJDK 64-Bit Server VM (build 25.302-b08, mixed mode)
    Command finished with exit code 0
    
    Introspection completed

    IDEA遠程部署調試Java應用程序的過程是怎樣的

    可以看到項目部署路徑Project path on target,JDK Home路徑JDK home path以及JDK版本JDK version都已經設置好了,點擊Finish返回之前的界面

    PS:可以自己修改部署路徑之類的配置

    保存應用配置

    IDEA遠程部署調試Java應用程序的過程是怎樣的

    可以看到遠程服務器已經配置好了,點擊OK按鈕配置完成

    驗證結果

    本地驗證

    IDEA遠程部署調試Java應用程序的過程是怎樣的

    點擊SpringbootRemoteDeployDemoApplication的啟動按鈕,在啟動日志中可以看到已經部署到服務器上,同時也能看到本地端口63006映射到了服務器的8080端口。

    $ curl http://localhost:63006/hello/world
    hello world%

    在本地訪問映射到服務器的端口63006,也能正常訪問。

    PS:可以啟動,當然也可以進行調試。

    服務器驗證

    在遠程服務器上,可以看到springboot-remote-deploy-demo已經被部署在/root路徑下了,且訪問http://127.0.0.1:8080/hello/world會正確返回hello world

    [root@switch-sz-service-test ~]# pwd
    /root
    [root@switch-sz-service-test ~]# ll
    total 4
    drwxr-xr-x 38 root root 4096 Oct  4 01:08 springboot-remote-deploy-demo
    [root@switch-sz-service-test ~]# curl http://127.0.0.1:8080/hello/world
    hello world[root@switch-sz-service-test ~]#

    上述就是小編為大家分享的IDEA遠程部署調試Java應用程序的過程是怎樣的了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

    向AI問一下細節

    免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

    AI

    鹤岗市| 南安市| 渝中区| 长岭县| 墨竹工卡县| 水富县| 凤山县| 郓城县| 繁昌县| 富锦市| 昆明市| 荥阳市| 阿勒泰市| 昌乐县| 永嘉县| 久治县| 集贤县| 龙门县| 阿瓦提县| 治县。| 宁陕县| 饶阳县| 常州市| 开封市| 三门峡市| 青铜峡市| 庄河市| 洛宁县| 金坛市| 友谊县| 玛沁县| 合山市| 高淳县| 西乡县| 剑阁县| 定南县| 保德县| 重庆市| 徐汇区| 青神县| 敦化市|