Как изменить проект Eclipse по умолчанию в проект Java

141

Я получил проект из SVN и не указал тип проекта, поэтому он был зарегистрирован как проект "по умолчанию". Как самый простой способ быстро преобразовать это в проект «Java»?

Я использую Eclipse версии 3.3.2.

Джо Дин
источник
2
Я не понимаю, почему для Eclipse это должно быть так сложно,
Оливер Уоткинс

Ответы:

121

Откройте файл .project и добавьте java nature и builders.

<projectDescription>
    <buildSpec>
        <buildCommand>
            <name>org.eclipse.jdt.core.javabuilder</name>
            <arguments>
            </arguments>
        </buildCommand>
    </buildSpec>
    <natures>
        <nature>org.eclipse.jdt.core.javanature</nature>
    </natures>
</projectDescription>

И в .classpath укажите ссылки на библиотеки Java:

<classpath>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
</classpath>
Крис Марасти-Георг
источник
25
Я согласен с Лоренцо, редактирование файлов конфигурации вручную - хороший способ столкнуться с проблемами с Eclipse.
Adam
5
@Ricky Это можно сделать через пользовательский интерфейс в определенных версиях с определенными плагинами.
Крис Марасти-Георг
1
@ ChrisMarasti-Georg Да, вы правы, но даже в этом случае решение должно предполагать установку этих плагинов или обновление пользовательского интерфейса, а не ручную настройку xml, особенно когда пользователь не знает, что он делает. Также потому, что это противоречит цели наличия продвинутой IDE.
ricardoespsanto
1
В моем случае мне просто нужно было добавить тег <nature> к <natures />. Я импортировал существующий проект Maven, и Eclipse не распознал его как проект Java. Однако Eclipse уже правильно настроил раздел Maven <buildCommand>. HTH.
Натан Смит
@flashdisk он должен находиться в корневом каталоге проекта.
Крис Марасти-Георг
118

Изменение XML и / или настроек вручную в eclipse очень опасно, если вы точно не знаете, что делаете. В другом случае вы можете обнаружить, что ваш проект полностью испорчен. Очень рекомендуется сделать резервную копию!

Как это сделать, просто используя Eclipse?

  1. Выберите проект.
  2. Откройте свойства проекта через Project -> Properties.
  3. Перейдите в «Целевые среды выполнения» и добавьте нужную среду выполнения. Щелкните ПРИМЕНИТЬ.
  4. Перейдите в «Фасеты проекта» и выберите фасет JAVA, который появился после шага 4. Нажмите ПРИМЕНИТЬ
  5. Задайте свой путь сборки.
  6. Если это проект Maven, вы можете выбрать проект, щелкнуть Maven -> Обновить конфигурацию проекта ...

Это сделало это для меня. И Eclipse настроен правильно. Надеюсь, это сработает и для вас.

Лоренцо
источник
25
Лоренцо знает, как это сделать. Использование Indigo: щелкните правой кнопкой мыши проект> Свойства ...> Фасеты проекта> Проверить Java> Применить
Thien
13
В Eclipse Indigo в свойствах проекта нет записи «Targetted Runtimes», по крайней мере, я не смог ее найти.
Саймон
8
@Lorenzo Я использую STS, и у меня нет "Java-аспекта" в Project Facets ". Есть идеи?
Роберт
17
Обратите внимание, что «Фасеты проекта» доступны только в версии Eclipse для Java EE (или с установленным WTP). См. Eclipse Bug 102527, чтобы узнать о наличии этой функции во всех версиях.
robinst
9
не сработало! У меня нет «Целевых сроков выполнения» и «Аспектов проекта»
Лай
53

В последних версиях eclipse исправление немного другое ...

  1. Щелкните правой кнопкой мыши и выберите Свойства проекта.
  2. Выберите аспекты проекта
  3. При необходимости нажмите «Преобразовать в фасетную форму».
  4. Выберите фасет "Java"
  5. Нажмите ОК
Виктор Граци
источник
23

Я удалил проект, не удаляя контент. Затем я создал новый проект Java из существующего ресурса. Указывая на мою корневую папку проверки SVN. Это сработало для меня. Хотя, путь Криса был бы намного быстрее. Это хорошо отметить на будущее. Благодарность!

Джо Дин
источник
Ваш способ работает, но важный момент: как здесь отмечено, вы НЕ должны снимать флажок «использовать местоположение по умолчанию».
Робин Грин
12

Используя фасеты проекта Project, мы можем настроить характеристики и требования к проектам.

Чтобы найти аспекты проекта в eclipse:

  • Шаг 1: Щелкните проект правой кнопкой мыши и выберите его propertiesв меню.
  • Шаг 2: Выберите project facetsвариант. Нажмите наConvert to faceted form... введите описание изображения здесь

  • Шаг 3: Мы можем найти все доступные фасеты, которые вы можете выбрать, и изменить их настройки. введите описание изображения здесь

Премрадж
источник
отличный способ решить эту проблему.
Atiq
11

Подход Джо на самом деле является наиболее эффективным средством, которое я нашел для ведения этого разговора. Чтобы подробнее рассказать об этом, вы должны щелкнуть правой кнопкой мыши проект в проводнике пакетов в eclipse, а затем выбрать его удаление без удаления каталога или его содержимого. Затем вы выбираете создание проекта Java (Файл -> Создать -> Проект Java) и в части содержимого диалогового окна Новый проект Java выбираете «Создать проект из существующего источника».

Преимущество этого подхода в том, что исходные папки будут правильно идентифицироваться. Я обнаружил, что возня с файлом .project может привести к тому, что весь каталог будет считаться исходной папкой, а это не то, что вам нужно.

Крис Дж
источник
Работа с eclipse Kepler build 20140224-0627 и «файл-> новый-> проект ...-> ... из существующих источников» кажется самым простым способом.
user1050755 09
В Kepler это работает немного иначе, бит «Создать проект из существующего источника» не нужен. Но да, это лучший способ сделать это.
Луис де Соуза
6

Вы можете сделать это прямо из eclipse, используя вид навигатора (Окно -> Показать вид -> Навигатор). В представлении «Навигатор» выберите проект и откройте его, чтобы увидеть файл .project. Щелкните правой кнопкой мыши -> Открыть. Вы получите представление редактора XML. Отредактируйте содержимое узла naturesи вставьте нового дочернего элемента natureс org.eclipse.jdt.core.javanatureсодержимым. Сохранить.

Теперь создайте файл .classpath, он откроется в редакторе XML. Добавьте узел с именем classpath, добавьте дочерний элемент с именем classpathentryс атрибутами kindс содержимым conи еще один с именем pathи содержимым org.eclipse.jdt.launching.JRE_CONTAINER. Сохранить-

Намного проще: скопируйте файлы .projectи .classpathиз существующего проекта Java и отредактируйте узел result nameна имя этого проекта. Может, стоит обновить проект (F5).

Вы получите тот же результат, что и с раствором Криса Марасти-Георга.

редактировать

введите описание изображения здесь

драмхерум
источник
6

В более новых версиях eclipse (я использую 4.9.0) есть другие, возможно, более простые методы. Наряду с гранями проекта теперь есть и аспекты проекта. Здесь процесс прост: откройте страницу свойств Project Natures и нажмите кнопку «Добавить ...». Это будет с возможной природой, включая Java Nature и Eclipse Faceted Project Properties. Просто добавьте Java Nature и игнорируйте различные предупреждающие сообщения и готово.

Природа проекта

Этот метод может быть лучше, поскольку вам не нужно сначала преобразовывать в граненую форму. Кроме того, Java не предлагалась в меню добавления аспектов.

Salix alba
источник
Спасибо.
Искал
3

Другой возможный способ - удалить проект из Eclipse (но не удалять содержимое проекта с диска!), А затем использовать мастер New Java Project для создания проекта на месте. Этот мастер обнаружит код Java и автоматически настроит пути сборки.

Брайан де Алвис
источник
1
  1. Щелкните правой кнопкой мыши проект
  2. Настроить -> «Преобразовать в фасетную форму»
  3. Вы увидите всплывающее окно, выберите «Java» в столбце «Project Facet».
  4. Нажмите Применить и ОК.
Кумар
источник
У Configure для меня всего 2 варианта: 1. Преобразовать в Maven 2. Настроить и обнаружить вложенный проект. Нужно ли мне что-либо активировать, чтобы увидеть эту «Настроить на фасетную форму»?
Reihan_amn
@Reihan_amn похоже, что ваша текущая установка eclipse не поддерживает это. Я не уверен, какие плагины отвечают за «граненую форму», но если вы загрузите версию Eclipse EE, вы получите ее по умолчанию.
semTex 09
1

В зависимости от рассматриваемого Eclipse требуемые пакеты WTP могут быть найдены с разными именами. Например, в Eclipse Luna я обнаружил, что проще всего искать с помощью «Инструменты» и выбирать тот, в котором упоминаются «Инструменты для разработки Java EE». Это добавило функциональности фасета проекта. Поиск с помощью "WTP" не помог.


источник
чтобы получить параметры фасета, я установил новое программное обеспечение: Eclipse Java EE Developer Tools, поиск «инструментов» в Eclipse Oxygen
DM