Подтвердить что ты не робот

Как найти правильный проект архетипа Maven для разработки с помощью Scala в Eclipse?

У меня возникают проблемы с попыткой просто создать проект Maven, используя Scala (v2.11.6) в Eclipse (Luna). В инструкциях здесь говорится, чтобы установить оба плагина ниже.

  • Интеграция Maven в Eclipse
  • m2eclipse- scala разъем

Оба плагина могут быть установлены с помощью сайта m2eclipse- scala обновления. Итак, вот что я сделал в своей первой попытке.

  • Загрузите Eclipse Luna (для разработчиков JavaEE)
  • Установите "оба" плагина выше, используя сайт обновления m2eclipse- scala.

Когда Eclipse загружается, я пытаюсь создать проект Maven, и архетипом, который я хочу использовать, является Group Id = net.alchim31.maven, Artifact Id = scala -archetype-simple, Version = 1.5. Однако этот архетип никогда не появляется, когда я вхожу в "scala -arch" в текстовое поле фильтра.

Единственный проект, который я вижу, - это группа с идентификатором группы = org.scala-tools.archetypes, Artifact Id = scala -archetype-simple, Version = 1.2. Когда я выбираю этот архетип для использования, я получаю кучу сообщений об ошибках в Eclipse.

  • при загрузке ConsoleRunner, Scala подпись ConsoleRunner имеет неправильную версию: 5.0 найден: 4.1 в ConsoleRunner.class
  • при загрузке JUnit4, Scala подпись JUnit4 имеет неправильную версию: 5.0 найден: 4.1 в JUnit4.class
  • ошибка при загрузке Спецификация, Scala подпись Спецификация имеет неправильную версию: 5.0 найдено: 4.1 в Specification.class

Во второй попытке я пытаюсь загрузить пакет, предварительно упакованный (Scala IDE для Eclipse). Опять же, когда я пытаюсь создать проект Scala Maven, я не вижу архетип Maven для Group Id = net.alchim31.maven(только для Group Id = org.scala-tools.archetypes).

Любые идеи о том, что я делаю неправильно здесь? Или где я могу найти проект ванили Scala Maven для импорта/изменения и использования для моей собственной цели?

4b9b3361

Ответ 1

Вот как я заработал. Кажется, все архетипы недоступны, поэтому на основе этого ответа я создал удаленный каталог

Перед

Image showing the original dialog with missing entry

Так что сделайте это

Перейдите в раздел [Windows] & ​​rarr; [Предпочтения] → [Maven] → [Архетипы] → Add Remote Catalog и создайте каталог, затем Apply

Image showing "Remote Archetype Catalog" modal window

Для копирования:

Вернитесь к созданию нового проекта Maven. В раскрывающемся списке выберите Remote Catalog. Потребуется несколько минут, чтобы собрать все архетипы. Вы можете увидеть прогресс в самом нижнем правом углу IDE. Когда это будет сделано, вы сможете увидеть архетипы

После

Image showing "scala-archetype" entry in the dialog

Создайте свой проект с помощью groupId и artifactId и т.д.

Щелкните правой кнопкой мыши проект, затем в контекстном меню [Run As] & rarr [Maven Build]. В диалоговом окне введите clean package в цели. Бег. Проект должен строить и запускать тесты.

Для меня сначала я получил ошибку в сборке. Это потому, что моя среда по умолчанию использует Java 8. Я новичок в Scala, поэтому я не уверен, что есть проблема с Scala и Java 8 или нет (я думаю, что это версия Scala в pom (2.10.0)). Но то, что я сделал, чтобы заставить его работать, - это просто изменить версию Java, используемую в IDE, для Java 7.

В основном просто перейдите к [Windows] & ​​rarr; [Привилегии] → [Java] → [Установленные JRE] → Add → [System VM] → Next → Directory → Найдите каталог дома Java (версия 7) → Finish → Затем в списке отметьте Java 7.

Затем создайте снова. Он должен работать. Удачи!

Ответ 2

Я столкнулся с одной и той же проблемой и случайно на этом вопросе SO, а также на ответ, который дал @peeskillet (большое спасибо). Я использую:

  • Maven 3.3.3
  • Eclipse Luna Scala IDE 4.0.0.-vfinal-20150305-1644-Typesafe
  • Scala 2.11.6
  • JDK 1.8

После выполнения шагов, точно указанных здесь, я ударил стену. Когда я выбрал правильный архетип (net.alchim31.maven), меня встретила эта ошибка: Could not resolve artifact net.alchim31.maven:scala-archetype-simple:pom:1.5 Подозревая, что maven, встроенный в eclipse, действовал смешно, я посетил [Windows] → [Maven] → [Установки] и добавил локальную установку maven (независимо от того, что установлено в M2_HOME в моей оболочке). Но, не повезло!

В ожидании, я посетил этот сайт: Scala Doc и переключился обратно в командную строку, как указано на этой странице. Удивительно (по крайней мере, для меня), это сработало. В текущем каталоге был создан проект maven- Scala, который я мог бы импортировать в Eclipse.

Просто, чтобы меня не поняли неправильно, я не предполагаю, что ответ @peeskillet неверен. Просто хотел поделиться другим способом создания проекта maven- Scala на Eclipse, если он кому-то поможет. Я еще не понял, почему Eclipse- Scala -IDE еще не дал этого чувства "Ага".

Ответ 3

Одна точка, которую я хочу добавить, Если вы получаете следующую ошибку при установке архетипа, показанного на изображении 1

Невозможно разрешить Archetype org.glassfish.jersey.archetypes: джерси-Quickstart-WebApp: 2,21 org.eclipse.core.runtime.CoreException: не удалось разрешить артефакт org.glassfish.jersey.archetypes: джерси-Quickstart-WebApp: П: 2,21

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

Затем перед обработкой с указанным решением выше, попробуйте выполнить эти шаги в eclipse.

Ответ 4

После того, как вы успешно создали проект scala -maven, как описано выше, вы, вероятно, увидите ошибку . Тип не найден: введите JUnitRunner specs.scala ". В этом случае вручную добавьте следующий фрагмент XML в ваш pom.

<dependency>
    <groupId>org.specs2</groupId>
    <artifactId>specs2-junit_${scala.compat.version}</artifactId>
    <version>2.4.16</version>
    <scope>test</scope>
</dependency>

Кроме того, чтобы избежать ошибок при запуске mvn test,

[ERROR] scalac error: bad option: '-make:transitive'

Вам также нужно удалить следующую строку из файла pom.xml:

<arg>-make:transitive</arg>