Запуск компилятора Java из теста JUnit довольно просто с использованием API компилятора Java . Тест проверяет, что я могу загрузить новый код, используя временный загрузчик классов, и что очистка работает, и т. Д.
Моя проблема - компиляция и / или запуск теста с использованием Maven .
Если я добавляю компилятор Java с использованием зависимости, я должен установить область действия на test
. Если я сделаю это, tools.jar
будет добавлен в путь к классам при компиляции тестов, что означает, что на пути к классам будет два Java-компилятора.
То же самое относится и к области действия runtime
, но это также добавит компилятор Java к моему артефакту, что сделает его утечкой. Все остальные области еще хуже.
Как я могу решить эту проблему?