-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ビルドツールの設定が有効活用されていない #830
Comments
maven/gradleはjavaで実装されており,スタンドアローンではなくライブラリとして利用もできる. 手元で上記2つのビルドツールをkgp内から実行して, |
こっから議論. kgpのcuiからどのようにビルドツールの設定を読み込ませるかを検討すべき. ビルドツールの実行はそれなりに時間を要するので,常にビルドツールを実行するのはどうだろう. 問題Aビルドツールの設定ファイルがあった場合に自動的に読み込むか否か. $ java -jar kgp.jar # A1. 自動的に読み込む
$ java -jar kgp.jar --gradle # A2. 指定すれば自動的に読み込む 問題B.同項目の設定が重複した場合にどうする? $ java -jar kgp.jar --config kgp.toml --gradle # toml vs gradle
$ java -jar kgp.jar --config kgp.toml --gradle --src src/main/java # toml vs gradle vs cui 設定内容に齟齬があったときはどれを優先する? 起動時にオプション一覧が並ぶので,一応利用者にどの値が反映されたかは見える.
|
結論
|
ref #596
前提
題材がビルドツール(maven/gradle)を利用している場合の話.
前提として,kgpの起動パラメタは2種類ある.
A. GAのパラメタ(兄弟の数,世代の数,タイムリミット等)
B. 題材の実行情報(ソースパス,テストパス,クラスパス)
やりたいこと
題材がビルドツールを利用している場合,Bの情報はビルドツールの設定を自動的に取り込むべき.
kgp利用者による明示的な指定が不要になり,kgpの可搬性が上がる.
#596 で部分的にその機能が実装された.
build.gradle
やpom.xml
等の設定ファイルを読み込んで,ソースパス・テストパスを自動解決する.問題点
しかし,設定ファイルの読み込みはあくまで静的な処理であるため,依存解決は適用されない.
よってクラスパスの適切な処理ができていない.Bの一部の情報が解決できていない.
(あとAも微妙に不完全)
idea
もしkgp内で各種ビルドツールを実行できれば,
以下依存解決関連の処理をビルドツールに委譲して,クラスパスの解決が可能になる.
The text was updated successfully, but these errors were encountered: