【Console Application】外部関数 29【学習記】
いわゆる include よー🤤
Q.
それで、 import できたの?
A.
何とか、 import できたよ☺️
→ Gradle の task で出力される SNAPSHOT でもアーティファクトでも取り込んだ側のビルドには関係がない
→ jar 由来の関数を Unresolved reference にならないようにする方法は相変わらず不明
#IntelliJ #Kotlin #import
#artifacts #snapshot
#学習記
湧き上がる懸念点
それじゃ、ビルドできない import 無限回廊の続きよー🤪
いやはや、仕事じゃなくて良かった…😞
仕事だったら原因不明の修正できない不具合発生でプロジェクト頓挫だわ🙄
(ビルドできてないのでそれ以前の問題ww)
どうでもいい前置きはいいとして…🤪
前回記事を書き終えた後に気になった事が出てきてチョロっと調べたんだけどそれのせいかも?
気になったというのは…
https://note.com/sayka/n/n9666b889ce48
アーティファクトって何?
って事🙄
初期に helloWorld の JAR を作った時は gradle の tasks から jar の生成でやっていて "SNAPSHOT" という語が追加された JAR が出力されていたのよね🤔
で、このライブラリのビルドでも gradle ツールから jar 出力すると SNAPSHOT と付いた JAR が出来上がる🤔
アーティファクトのは指定した記憶のない階層(多分自動生成のどこかに書かれてる)が作られてそこに出力されている🤔
もしかして
SNAPSHOT
の方を使うべきでは?
アーティファクトとは?
アーティファクトを操作する
https://pleiades.io/help/idea/working-with-artifacts.html
これを見ると xcode における framework や bundle のような存在…かな?🤔
android に使う AAR というのがあるけど、丁度(framework,bundle と)似た関係なのかなと思う…多分🤪
Intellij IDEAで実行可能なjarを作る方法
https://qiita.com/nwtgck/items/7a61c5bb9d5b2d266cfe
しかしこれを見ていると「アーティファクトは所謂リリースビルド?🤔」みたいな感じがしてくるのよね🙄
ライブラリ軍なのであればアーティファクトの状態でも使える気がするんだけど実際は取り込んでビルドできない😞
ただ、テストで呼び出す事はできる…🤔
SNAPSHOT 試す前にこのアーティファクト出力を取り込んで使う方法が出てないか調べてみようかな🤤
………
作る方法は出てくるけど使う方法が出てこない🤪
語が入ってるからこの記事も程なくして汚染記事の仲間入りかな…😞
………
なんで出てこないの…😞
とりあえず設定見てみるしかないね🙄
どうやらモジュール設定にあるアーティファクトは「出力設定」っぽい😞
出力しちゃえばアプリだろうがライブラリだろうが関係ないよって話なんだろうかね🙄
SNAPSHOT
SNAPSHOT をリビルドして、それをリネームして取り込んでみようの巻🤤
あれ?せんせー、 IntelliJ にクリーンって無いんのん?🤪
Tasks の中にあるやつかな?👇
ヨシ👈🤪
それじゃアーティファクト側も…🤤
…
…
…
何も起きない🙄
まぁいいや🤪💥🤛
リネームしてキャッシュ削除してプロジェクトオープン🤤
IntelliJ はこのインデックス作成がやたら長い😞
…
…
…
😞😞😞
とりあえず jar タスク走らせてみようね…😞
🤔🤔🤔
🤪🤪🤪
え?じゃぁアーティファクトに取り替えてもう一回🤤
(この時さっきのクリーンが有効で jar が消えている事に気付くw)
全然問題なし…以前 jar のタスクでエラー出てたのは一体…🙄
アーティファクト出力
で、調子に乗って helloWorld のアーティファクトを出そうと思ったんだけど
アーティファクトが無効😞
ライブラリの方は最初から jar にするのが判ってるから設定されてる、とかなのかな🤤
因みにビルドは相変わらず Unresolved reference が出ていて完了しない模様🙄
まぁ、設定するのは凄い簡単みたいだからとりあえず設定してみた🤤
ここまであれこれ調べてて多分こうだよねって操作だけど検索機能とか付いてるのでここで迷うのは多分殆ど無いと思う🤔
🙄🙄🙄
説明は ちゃんと読もう🤪
あれ?これだとさっきと変わってない…何か他に設定があるのかな…?🤔
………
IntelliJからjarを正しく作成する方法
https://www.webdevqa.jp.net/ja/java/intellij%E3%81%8B%E3%82%89jar%E3%82%92%E6%AD%A3%E3%81%97%E3%81%8F%E4%BD%9C%E6%88%90%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/967305304/
マニフェストディレクトリを変更する必要があります。
「Java」を「resources」に置き換えます。
🙄🙄🙄
なんでこんな嫌がらせみたいな事になってんのこれ?😞
ここか🤔
ここが resources になってるときとなってない時が有るみたいでよく見ないとならないっぽい🙄
🙄🙄🙄
SNAPSHOT 動くからもういいや🤪
次回は
今度こそ argv を…🤤