我试着减小了Spring Boot的容量。(Wǒ shìzhe jiǎnxiǎole Spring Boot de róngliàng)
我自己的介绍
-
- opengl-8080
-
- 主に Qiita で技術メモを書いたり
- 関西の SIer 勤務
Spring Boot是什么
-
- Spring ベースのアプリケーションを簡単に作れるようにした仕組み・フレームワーク
- ビルド結果が単一の jar ファイルにまとめられる
单个罐的优点
(Only one option provided as requested)
-
- AP サーバーが同梱されているので、環境ごとに AP サーバーを用意する必要がない
java -jar で起動できる楽さ
单一罐子的缺点
- AP サーバーも含め全ての依存ライブラリを内包するため、ファイルサイズが大きくなる
努力将瓶子的尺寸减小了一下。
结果
结果
尺寸比较
你是怎么做到的?
在Java中,如何实现”Hello World”?
1.撰写代码.
public class Hello {
public static void main(String... args) {
System.out.println("Hello World");
}
}
在Java编译器中进行编译
$ javac Hello.java
3. 生成一个Hello.class文件
使用Java执行
$ java Hello
Hello World
请问您是否理解了呢?
编译前的源代码大小较小!
在中文中,有一个可以打开javac的API是标准的!
改良版的jar机制。
|-LightweightJarExecutor.class :
| → 自分自身の jar の中からソースを取り出してコンパイル・実行するコード
|-...
`-src/ : Spring Boot および依存するライブラリのソース一式
|-ch/ : logback
|-com/ : jackson とか com.sun とか
|-javax/ : javaee の標準 API
|-META-INF/
|-org/ : Spring, hibernate, JBoss, Tomcat, etc...
`-sample/ : Spring MVC の Hello World
启动时的操作
-
- 从自己的jar文件中提取源代码并将其复制到临时目录中
-
- 使用JavaCompiler在临时目录中编译输出的源代码
-
- 使用URLClassLoader从编译结果的输出目录中加载Spring Boot的主类(JarLauncher)
- 执行JarLauncher的main()方法