WSL 2(Windows Subsytem for Linux 2)が分かり辛いけど、zipinfoコマンドを試してみる

nazology.net

米国のコロンビア大学(Columbia University)で行われた研究によれば、ロボットに自分の体について、視覚的な自己認識を与えることに成功した、とのこと。

ロボットに初歩的な自己認識能力を持たせることに成功! - ナゾロジー

⇧ amazing...

GradleのタスクでWARファイルを作成しておく

zipinfoなるコマンドで、JavaのWARファイルの中身が展開せずとも確認できるということで、WARファイルを準備します。

Eclipseで適当な「Spring Boot」なプロジェクトを、ビルドツールに「Gradle」を指定して作成しておき、build.gradleにWARファイルを作成するタスクを追加します。

■async-example/build.gradle

plugins {
	id 'org.springframework.boot' version '2.7.0'
	id 'io.spring.dependency-management' version '1.0.11.RELEASE'
	id 'java'
	id 'war'
}

group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'

configurations {
	compileOnly {
		extendsFrom annotationProcessor
	}
}

repositories {
	mavenCentral()
}

dependencies {
	implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
	implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
	implementation 'org.springframework.boot:spring-boot-starter-web'
	compileOnly 'org.projectlombok:lombok'
	developmentOnly 'org.springframework.boot:spring-boot-devtools'
	runtimeOnly 'org.postgresql:postgresql'
	annotationProcessor 'org.projectlombok:lombok'
	testImplementation 'org.springframework.boot:spring-boot-starter-test'
}

tasks.named('test') {
	useJUnitPlatform()
}

bootWar {
  archiveName 'ROOT.war'
}
    

で保存して、「Gradleタスク」を更新すると、bootWarというタスクが追加されるので、ダブルクリックで実行。

エラーなく実行されると、

[プロジェクトのルート]/build/libs に、WARファイルが配置されます。

パッケージ・エクスプローラーに、buildフォルダとかが表示されない場合は、「フィルター(F)...」を選択して、

ビューから除外する要素にチェックが入ってしまっている可能性があるので確認しましょう。

WSL 2(Windows Subsytem for Linux 2)のLinuxディストリビューションディレクトリに配置

Windowsエクスプローラーで、

\\wsl$    

と入力すると、WSL 2(Windows Subsytem for Linux 2)のLinuxディストリビューションディレクトリにアクセスできます。

Linuxディストリビューションをインストールして無い場合は、インストールしましょう。

chigusa-web.com

⇧ 上記サイト様が参考になるかと。

自分の環境では、ubuntu 20.04 LTSをインストールしてます。

で、WARファイルをWSL 2(Windows Subsytem for Linux 2)のLinuxディストリビューションディレクトリに配置しておきます。

WSL 2(Windows Subsytem for Linux 2)が分かり辛いけど、zipinfoコマンドを試してみる

コマンドでWSL 2(Windows Subsytem for Linux 2)のLinuxディストリビューションにアクセスしていきます。

何が分かり辛いって、「/(スラッシュ)」を付けて検索しないと、Linux側のディレクトリが参照されないってところね…

何か、Windows環境のディレクトリとLinux環境のディレクトリが同時に参照できるのが気持ち悪い...

そして、zipinfoなるコマンドが、unzipコマンドに含まれてるというのも分かり辛いやん?

というわけで、unzipコマンドをインストールで。

配置しておいたWARファイルを、zipinfoコマンドで確認。

WARファイルに含まれる各ファイルのサイズとかが確認できます。

zipinfoについては、職場の同僚の方が使っていらっしゃったのを見て知ったのですが、どのクラスのファイルサイズが大きいのかなどを、展開せずに確認できるのは便利ですね。

今回はこのへんで。