当前位置:   article > 正文

Idea远程debug操作步骤(连接服务器)_idea连接服务器debug

idea连接服务器debug

Idea远程debug操作步骤【SpringBoot项目】

1 创建本地SpringBoot项目

注意,具体业务逻辑可以随意写,此处我为了简介,并没有严格按照规范来

1.1 定义service

@Service
public class AddService {

    public int add(int a, int b){
        int sum = a + b;
        System.out.println(sum);
        return sum;
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

1.2 定义controller

@RestController
public class TestController {

    @Autowired
    private AddService addService;

    @RequestMapping("/test")
    public String testController(){
        int a = -1;
        int b = 4;
        System.out.println("addService.add(a, b) = " + addService.add(a, b));
        return "test....";
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

1.3 启动类

@SpringBootApplication
//@EnableMBeanExport // 自动注册MBean
public class TestApplication {

    public static void main(String[] args) {
        SpringApplication.run(TestApplication.class, args);
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

2 创建并配置远程连接

2.1 在本地idea配置远程连接

远程连接地址Host:填写自己服务器的地址即可
端口Port:5005(默认)
命令行参数(默认):-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005
  • 1
  • 2
  • 3

在这里插入图片描述

2.2 运行maven,将SpringBoot程序打包并上传启动(此处打成war包)

在这里插入图片描述
将打包好的war包,上传到linux服务器上

此处我上传到了test目录下
  • 1

在这里插入图片描述

启动项目:
在这里插入图片描述

2.3 在本地打好断点(并以debug方式启动)

注意:本地java代码需要与linux服务器上的保持一致【否则debug会失败】
  • 1

①在本地idea打断点
在这里插入图片描述

②以debug方式启动
在这里插入图片描述

③当出现Connected to the target VM,…表示与远程连接成功
在这里插入图片描述

④运行成功
在这里插入图片描述

⑤运行结果:
在这里插入图片描述

拓展 :

①war包与jar包区别

jar是普通java项目打包,通常是开发时要引用通用类,达成jar包便于存放管理
war是java web项目打包,web网站完成后,达成war包部署到服务器,目的是为了节省资源,提高效率。

  1. war是一个web模块,其中需要包括WEB-INF,是可以直接运行的WEB模块,jar一般只是包括一些class文件,在声明了Main_class之后可以直接用java命令执行
  2. war是做好一个web应用后(通常是网站),打成包部署到容器中;jar包通常是开发时要引用通用类,打成包方便存放管理
  3. war是Sun公司提出的一种Web应用格式,也是许多文件的一个压缩包。这个包中的文件按一定目录结构来组织;classes目录下包含编译好的Servlet类和Jsp或Servlet所依赖的其他类(如JavaBean)可以达成jar包放到WEB-INF的lib目录下
JAR文件格式以ZIP文件格式为基础。与ZIP不同的是,JAR文件不仅用于压缩和发布,而且还用于部署和封装库、组件和插件
程序,并可被类似于编译期和JVM这样的工具直接使用。
  • 1
  • 2
  • JAR文件:
    安全性:可以对JAR文件加上数字化签名,用于检测代码是否被篡改过
    减少下载时间:共用一个连接
    压缩:允许再压缩
    传输平台扩展:提供了向Java核心平台添加功能的方法
  • WAR文件:
    就是一个Web应用程序,建立WAR文件,就是把整个Web应用程序(不包括Web应用程序层次结构的根目录)压缩起来,指定一个war扩展名

②SpringBoot访问静态资源[统一配置]

项目结构:

在这里插入图片描述

controller层(配置页面跳转)
@Controller
public class TestController {

    @RequestMapping("/test")
    public String test(){
        return "test.html";
//        return "/test.html"; 此处/可不加
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
yml文件设置静态资源映射路径
spring:
  mvc:
    static-path-pattern: /**  
    # HTTP的请求地址
  # static-path-pattern: /login/** 
  web:
    resources:
      static-locations: classpath:/static/, classpath:/templates/


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/613291
推荐阅读
相关标签
  

闽ICP备14008679号