Мой gradle-проект должен генерировать код для оставшегося процесса сборки.Инструментом, который должен генерировать код, является файл JAR, который также встроен в тот же проект Gradle.
Я хочу написать пользовательскую задачу, которая обрабатывает шаг генерации кода.Эта задача, очевидно, должна зависеть от создаваемого файла JAR, это достаточно просто.
Теперь я хочу получить доступ к классам из моего файла JAR в пользовательской задаче, и я просто не знаю, как сказать gradleчто класс Parser доступен из встроенного файла JAR.В следующем примере показано, что я хочу сделать в своей задаче:
task generateCode(dependsOn: ':dmlproject:build') {
doLast {
DmlParser parser = new DmlParser();
parser.doStuff();
}
}
Gradle не знает, что класс DmlParser можно найти в jar-файле dmlproject, как я могу указать gradle, где его найти?Это вообще возможно?
Я понимаю, если это вообще не сработает, прежде чем я построю dmlproject хотя бы один раз, потому что без jar-файла нет и класса DmlParser.Но после первой сборки должно быть возможно заставить все работать, не так ли?
РЕДАКТИРОВАТЬ: Даже если я не могу ссылаться на классы в файле jar, который построен в том же проекте, яхотел бы узнать, как получить доступ к классам в jar-файле на диске или в классе, загруженном из репозитория maven.