Як я можу перевести проект, створений Netbeans, на прийняття конфігурації Maven? Є варіанти створення проектів на основі Maven, але немає нічого (що я знайшов на сьогодні) для додавання залежностей Maven до існуючих проектів.
Як я можу перевести проект, створений Netbeans, на прийняття конфігурації Maven? Є варіанти створення проектів на основі Maven, але немає нічого (що я знайшов на сьогодні) для додавання залежностей Maven до існуючих проектів.
Відповіді:
Вам потрібно створити окремий проект Maven. Потім ви можете скопіювати код іншого проекту до проекту Maven. Це можна зробити у вікнах проектів у NetBeans.
Просто виберіть файли / пакети коду в дереві, клацніть правою кнопкою миші для копіювання, а потім вставте їх у вихідні пакети нового проекту Maven.
Далі відкрийте файли, які Maven не зможе скомпілювати, оскільки вони пропускають залежності. Жовта лампочка зліва від проблемної лінії дасть вам варіанти пошуку відсутніх залежностей та додавання їх до вашого проекту. Для пошуку потрібно бути в Інтернеті.
Ви також можете додати залежності maven вручну у своєму новому проекті Maven, клацнувши правою кнопкою миші папку залежностей у вікнах Проекти.
Якщо ви знайомі з maven, ви завжди можете налаштувати maven навіть пізніше, однак це не рекомендується.
єдина причина, за якою люди (включаючи мене;)) рекомендують створити новий проект maven - це Maven має власну структуру каталогів. І це стандартно. тепер, якщо ви хочете увімкнути maven для вашого проекту на більш пізньому етапі, тоді ви можете налаштувати речі в pom.xml, тобто ваш вихідний каталог, цільовий каталог та каталог веб-програми (якщо це можливо)
У мене був великий проект у SVN, і мені заборонили створювати новий проект. Я не хотів підтримувати управління бібліотеками, тому я налаштував maven відповідно до своєї структури каталогів.
ось частина мого pom.xml
<build>
<sourceDirectory>src</sourceDirectory>
<testSourceDirectory>testpackages</testSourceDirectory>
<testOutputDirectory>target/test-classes</testOutputDirectory>
<plugins>
<plugin>
<version>2.3.2</version>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.1</version>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
<webResources>
<resource>
<!-- this is relative to the pom.xml directory -->
<directory>web-root</directory>
</resource>
</webResources>
</configuration>
</plugin>
sourceDirectory
як недійсний :(
Я виконую ці кроки для моєї настільної програми Java (перед цим виконайте резервне копіювання проекту):
Відкрийте свій проект у Eclipse (перейшовши до нового проекту та переглянувши ваш проект). Імпорт проекту не буде працювати.
Увімкнути maven для цього проекту
Додайте бібліотеку залежностей
Закрийте свій проект
Видаліть NBProject
папку та Build.xml
з розташування проекту (інакше NetBeans не зможе розпізнати її як проект maven).
Відкрийте цей проект у NetBeans
Покращення відповіді @JVerstry .. Я додаю ще одне незрозуміле рішення тут, кроками.
Створіть новий проект Maven у Netbeans. Потім скопіюйте вставний вихідний код у папку maven, це можна зробити в IDE Projects Netbeans IDE View Itself. Після цього виконайте наступні дії.
Пункт 1 :
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
Пункт 2 : і додайте spring.version до розділу ваших властивостей
<properties>
<spring.version>4.0.2.RELEASE</spring.version>
</properties>
Пункт 3 : У папці WEB-INF створіть файл з іменем диспетчер-сервлет.xml . Відкрийте файл і скопіюйте наступний код.
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd">
<mvc:annotation-driven />
<context:component-scan base-package="com.youbequityweb.controllers" />
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
</beans>
оголошує підтримку анотації, керовану mvc, за допомогою @Controller, @Service, @Component.
означає сканувати класи з цього базового пакету, щоб визначити всі класи bean.
Розподільник подання визначає розташування наших переглядів (jsp) та розширення. У своєму web.xml додайте пружинні конфігурації всередині розділу веб-програми .
<!--Spring Config-->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/dispatcher-servlet.xml</param-value>
</context-param>
<listener> <listenerclass>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet- class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
Пункт 4 : Це складно, тепер зв’яжіть свій існуючий основний контролер з базовим пакетом, визначеним у depecher-servlet.xml . наприклад: HomeController.java, показаний нижче.
package com.youbequityweb.controllers;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@Controller
public class HomeController {
@RequestMapping(value="/home", method = RequestMethod.GET)
public String viewHome(){
return "home";
}
}
Пункт 5 : Тепер у NetBeans клацніть правою кнопкою миші, виберіть чистий і побудуйте, усуньте будь-які попередження та конфлікти, а потім запустіть програму Spring MVC для отримання результатів.
Я виявив випадково, чому Netbeans 8.2. відкриває проекти як проекти Netbeans замість Maven; після того, як ви видалили файли netbeans та ant, а потім замінили їх на правильно сформований pom.
Схоже, Netbeans кешує типи проектів для вже відкритих проектів, це можна вирішити, видаливши вказаний кеш.
Windows знаходиться тут:
C:\Users\${username}\AppData\Local\NetBeans\Cache
Linux тут:
~/.cache/netbeans/${netbeans_version}/index/
Mac тут:
~/Library/Caches/NetBeans/${netbeans_version}/