Почему зависимости не добавляются в classpath, когда я запускаю проект весенней загрузки в IntellJ IDEA? - PullRequest
0 голосов
/ 17 мая 2018

Моя ОС Ubuntu 16.04 , IDE IntellJ IDEA 2018.1.3.

В последнее время я пытаюсь запустить простой Spring Boot проект в Maven, но когда я запускаю это приложение, я получаюнекоторые сообщения об ошибках о том, что зависимости не существуют, следующие: enter image description here

Я полагаю, что зависимости не добавлены в classpath, но конфигурация проекта и maven-зависимости нормальны.Я пытаюсь запустить тот же проект на другом компьютере, на котором установлена ​​ОС Windows 10.Это хорошо работает.

  • Maven:

enter image description here

  • Структура проекта:

enter image description here

Мой pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>com.test</groupId>
<artifactId>test1</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
    <junit.version>4.12</junit.version>
    <mysql.version>5.1.43</mysql.version>
</properties>


<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.8.RELEASE</version>
</parent>

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-aop</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>

    <dependency>
        <groupId>org.mybatis.spring.boot</groupId>
        <artifactId>mybatis-spring-boot-starter</artifactId>
        <version>1.3.1</version>
    </dependency>

    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>${junit.version}</version>
    </dependency>

    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>${mysql.version}</version>
    </dependency>

    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>fastjson</artifactId>
        <version>1.2.41</version>
    </dependency>
</dependencies>
</project>

Ответы [ 2 ]

0 голосов
/ 19 мая 2018

Я просто удаляю каталог idea.system.path в idea/bin/idea.properties файле.

Удаляем .idea/ и *.iml файл, затем заново импортирую проект.

Однако я до сих пор не знаюпричина этой проблемы и решение.

0 голосов
/ 17 мая 2018

Следующая процедура предназначена для устранения ошибки library not found для проектов, созданных с помощью Maven Project.Но если вы создадите проект с использованием Spring Initializr, такой проблемы не будет.Теперь откройте Project Structure (сочетание клавиш Ctrl + Alt + Shift + S) в Intellij.Затем следуйте этому изображению:

enter image description here

Нажмите Create Artifact.Затем выполните следующее изображение:

enter image description here

Выберите все библиотеки, затем щелкните правой кнопкой мыши и выберите Put into /WEB_INF/lib.Нажмите ОК, затем скомпилируйте, тогда все будет хорошо.Но не забудьте повторить процесс для каждой вновь добавленной библиотеки.Печально, но верно, что для maven project нет автоматизированного процесса, но вы можете переключиться на Spring Initializr.

ОБНОВЛЕНИЕ

Если вы создали свой проект с помощью Spring Initializrтогда я сомневаюсь, что вы можете использовать по умолчанию Tomcat, установленный в вашей системе.В этом случае вы должны использовать embedded tomcat, который автоматически управляется IDE при его запуске.Ниже приведена ссылка для зависимости maven, и удалите ранее добавленную вами конфигурацию tomcat:

<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-tomcat -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
    <version>1.5.13.RELEASE</version>
</dependency>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...