首页 > 编程语言 >java模块化初步理解

java模块化初步理解

时间:2023-10-18 17:56:32浏览次数:38  
标签:java -- 模块化 HelloWorld 初步 base 模块 class

1.先看两个命令:

jdeps HelloWorld.class

HelloWorld.class -> java.base
   <unnamed>                                          -> java.io                                            java.base
   <unnamed>                                          -> java.lang                                          java.base

可以看到HelloWorld.class里只用到了java.base模块,且只用到这个模块里的java.io和java.lang两个package【说实在话,这个模块名就不应该用java.base这样的格式,看着还以为是package】

所以我们运行HelloWorld.class是不需要用到完整的jre的,可以用jlink命令来生成更小的可执行java文件:

 

jlink \
         --add-modules java.base \
         --strip-debug \
         --no-man-pages \
         --no-header-files \
         --compress=2 \
         --output /javaruntime
/javaruntime/bin/java HelloWorld

/javaruntime目录大小会比完整jre小很多;

 

通过这个例子就能大概理解模块化是干啥,就是将jdk拆分了很多模块,这样如果我们的应用程序只需要其中几个模块,可以拆出这几个模块组成完整的程序;

标签:java,--,模块化,HelloWorld,初步,base,模块,class
From: https://www.cnblogs.com/silentdoer/p/17772987.html

相关文章

  • Java拾贝第五天——静态和代码块
    Java拾贝不建议作为0基础学习,都是本人想到什么写什么在Java中主要存在4块内存区域。栈内存空间:保存所有变量(更准确的说是保存了指向堆内存空间的地址)堆内存空间:保存每个对象的具体属性内容全局数据区:保存static类型的属性全局代码区:保存所有方法定义static关键字一个类实......
  • java web(2)
    1.异常全局处理2.事务3.aop技术4.mtbits5.三大存储技术1.异常全局处理点击查看代码importcom.example.program.pojo.Result;importorg.springframework.web.bind.annotation.ExceptionHandler;importorg.springframework.web.bind.annotation.RestControllerAdvice;......
  • Error:java: Compilation failed: internal java compiler error
    Error:java:Compilationfailed:internaljavacompilererror出现这个错误的原因主要是因为JDK版本问题,有两个原因,一个是编译器版本不匹配,一个是当前项目JDK版本不支持。File-->ProjectStructure-->ProjectSettings-->Project或者Ctrl+Alt+shift+S打开项目的......
  • Java 新手如何使用Spring MVC 中的双向数据绑定?
    数据绑定,正如其名称本身一样,是一个不言自明的词。在数据绑定中,我们要做的是捕获或存储数据,以便我们可以根据需要将该数据与另一个资源绑定(例如在前端部分显示数据),或者我们也可以从一个变量并根据我们的要求显示它。例如,有一个谷歌表单,用户在该表单中输入所有详细信息,我们必须捕获/......
  • Java 新手如何使用Spring MVC 中的查询字符串和查询参数?
    Java新手如何使用SpringMVC中的查询字符串和查询参数?根据维基百科的说法,“查询字符串是统一资源定位符(URL)的一部分,它为指定的参数分配值。查询字符串通常包括由Web浏览器或其他客户端应用程序添加到基本URL的字段,例如作为HTML的一部分、选择页面的外观或跳转到多媒体内容......
  • JAVA IO 详细介绍
                  ......
  • 【JAVA】cron定时怎么记 ss mi hh DD MM 星期 YY
      ......
  • JavaScript高级程序设计(第3版)pdf电子版Nicholas C. Zakas
    JavaScript高级程序设计(第3版)pdf电子版作者:[美]NicholasC.Zakas原作名:ProfessionalJavaScriptforWeb出版年:2012-3-29ISBN:9787115275790链接提取码:jz6rJavaScript最基础的书籍。......
  • Java 设计模式之七大原则
    Java设计模式之七大原则|Drunkbaby'sBlog(drun1baby.top)1、认识设计模式1.1什么是设计模式所谓设计模式,就是对经常出现的软件设计问题的成熟解决方案。很多人把设计模式想象成非常高深的概念,实际上设计模式仅仅是对特定问题的一种惯性思维。笔者见过一些学员喜欢抱着一......
  • 【JAVA】org.apache.http依赖
     <dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId><version>4.5.2</version></dependency><dependency>&l......