Как отключить функцию «Доступно только для тестовых источников» в Eclipse Photon? - PullRequest
0 голосов
/ 04 июля 2018

Недавно выпущенный Eclipse Photon имеет функцию, в которой он автоматически выводит список библиотек с областью действия, установленной на test, с атрибутом «Доступно только для тестовых источников», установленным на «да», и его нельзя отключить.

Showing Maven test dependencies

Проблема, с которой я сталкиваюсь из-за этого, ни в одном из наших проектов Eclipse в настоящее время папка исходного кода не помечена как тестовая папка. Будучи корпоративной средой, я не могу пойти дальше и просто обновить все нечетные сотни проектов. Кроме того, Eclipse Photon еще официально не поддерживается в нашей организации.

Таким образом, это означает, что я получаю тысячи ошибок компиляции во всех тестовых папках, поскольку их зависимости теперь доступны только для папок, помеченных как «тестовые».

Как отключить эту функцию?

Ответы [ 2 ]

0 голосов
/ 05 июля 2018

Я думаю, что вы на самом деле используете maven, и тестовые зависимости автоматически устанавливаются как "Видимые только для тестовых источников" как часть контейнера пути к классу "Maven Dependencies" m2e.

Если обновление файлов .classpath (щелкнув правой кнопкой мыши по проекту и выбрав «Maven»> «Обновить проект») не подходит для вас, вы можете понизить плагин m2e, удалив его и установка более старой версии http://download.eclipse.org/technology/m2e/releases/ (я проверил, что 1.8.3.20180227-2137 работает).

Обновление : в m2e 1.9.1, который можно установить в Eclipse Photon с помощью «Проверка обновлений» и который включен в Eclipse 2018-09 (преемник Photon), вы можете отключить тест разделение пути к классу путем установки свойства maven m2e.disableTestClasspathFlag в true. Вы можете сделать это либо на уровне проекта, установив его в отдельных pom.xml файлах, либо для всего рабочего пространства, добавив его в качестве свойства активного профиля пользователя settings.xml.

Если у вас еще нет пользователя setting.xml, создайте его со следующим содержимым и выберите его в Eclipse в Preferences > Maven > Users Settings как User Settings. Затем щелкните правой кнопкой мыши проекты и выберите «Maven»> «Обновить проект» для всех проектов.

 <?xml version="1.0" encoding="UTF-8"?>
    <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
        <profiles>
            <profile>
                <id>default</id>
                <properties>
                    <m2e.disableTestClasspathFlag>true</m2e.disableTestClasspathFlag>
                </properties>
            </profile>
        </profiles>
        <activeProfiles>
            <activeProfile>default</activeProfile>
        </activeProfiles>
    </settings>
0 голосов
/ 05 июля 2018

См. раздел «Источники тестирования» статьи « Eclipse Project Photon - Новое и достойное внимания »:

... для проектов и библиотек есть атрибут Доступен только для тестовые источники . Этот параметр также существует для контейнеров classpath и если для одного из них установлено значение Да, это значение будет использоваться для всех содержащиеся библиотеки и проекты.

Вы можете включить или отключить настройку из {ваш проект}> Свойства в Путь сборки Java> Источник , выбрав запись Содержит источники теста и нажав кнопку Toggle :

enter image description here

Итак, вы уже на правильном экране для решения проблемы; просто нажмите на вкладку Source и установите Содержит тестовые источники в Нет .

...