Reputation: 990
I am trying to run a Small basic Spring boot program on my machine and I when I run clean compile
(even before trying spring-boot:run) on maven I get the following Error :
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] /C:/Users/hbenayed/eclipse-workspace/SpringBootPoc/src/main/java/com/benayed/spboot/poc/SpringBootPoc/SpringBootPocApplication.java:[3,32] package org.springframework.boot does not exist
[ERROR] /C:/Users/hbenayed/eclipse-workspace/SpringBootPoc/src/main/java/com/benayed/spboot/poc/SpringBootPoc/SpringBootPocApplication.java:[4,46] package org.springframework.boot.autoconfigure does not exist
[ERROR] /C:/Users/hbenayed/eclipse-workspace/SpringBootPoc/src/main/java/com/benayed/spboot/poc/SpringBootPoc/SpringBootPocApplication.java:[6,2] cannot find symbol
symbol: class SpringBootApplication
[ERROR] /C:/Users/hbenayed/eclipse-workspace/SpringBootPoc/src/main/java/com/benayed/spboot/poc/SpringBootPoc/SpringBootPocApplication.java:[10,17] cannot find symbol
symbol: variable SpringApplication
location: class com.benayed.spboot.poc.SpringBootPoc.SpringBootPocApplication
[INFO] 4 errors
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 14.807 s
[INFO] Finished at: 2018-02-18T03:28:24+01:00
[INFO] Final Memory: 19M/167M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project SpringBootPoc: Compilation failure: Compilation failure:
[ERROR] /C:/Users/hbenayed/eclipse-workspace/SpringBootPoc/src/main/java/com/benayed/spboot/poc/SpringBootPoc/SpringBootPocApplication.java:[3,32] package org.springframework.boot does not exist
[ERROR] /C:/Users/hbenayed/eclipse-workspace/SpringBootPoc/src/main/java/com/benayed/spboot/poc/SpringBootPoc/SpringBootPocApplication.java:[4,46] package org.springframework.boot.autoconfigure does not exist
[ERROR] /C:/Users/hbenayed/eclipse-workspace/SpringBootPoc/src/main/java/com/benayed/spboot/poc/SpringBootPoc/SpringBootPocApplication.java:[6,2] cannot find symbol
[ERROR] symbol: class SpringBootApplication
[ERROR] /C:/Users/hbenayed/eclipse-workspace/SpringBootPoc/src/main/java/com/benayed/spboot/poc/SpringBootPoc/SpringBootPocApplication.java:[10,17] cannot find symbol
[ERROR] symbol: variable SpringApplication
[ERROR] location: class com.benayed.spboot.poc.SpringBootPoc.SpringBootPocApplication
[ERROR] -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project SpringBootPoc: Compilation failure
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.compiler.CompilationFailureException: Compilation failure
at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:858)
at org.apache.maven.plugin.compiler.CompilerMojo.execute(CompilerMojo.java:129)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207)
... 20 more
[ERROR]
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
Here is my 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.benayed.spboot.poc</groupId>
<artifactId>SpringBootPoc</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>SpringBootPoc</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.10.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<!-- <dependency> -->
<!-- <groupId>org.springframework.boot</groupId> -->
<!-- <artifactId>spring-boot-starter-data-jpa</artifactId> -->
<!-- </dependency> -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
And here is my java Class :
package com.benayed.spboot.poc.SpringBootPoc;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class SpringBootPocApplication {
public static void main(String[] args) {
SpringApplication.run(SpringBootPocApplication.class, args);
}
}
I tried many solutions I could find on internet, such as deleting the .m2 repository, adding different tags (version, fork,...) to the spring-boot-maven-plugin
plugin which, I'm pretty sure, is the part causing the problem
Any suggestions ?
Upvotes: 37
Views: 242399
Reputation: 171
For those who have added all dependencies in pom.xml and still facing issue, try to run mvn dependency:tree
in mvn console present in intellij or the terminal if you have maven installed. This resolved all the dependencies which were not earlier getting resolved by mvn clean install
for me.
Upvotes: 0
Reputation: 111
If you have this dependency below, but still you have this error:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
your maven still doesn't download it, for this issue may you need to vpn or check internet connection. I have the same error and I use vpn, next in "Intelij IDE" in maven window( right side) if you can not see that, you should active that, next click on "reload All Maven project" and maven will download the library, then you can see your problem has been fixed. may it helpful.
Upvotes: 1
Reputation: 11
If you are facing this issue in intellij, Go to pom.xml. Right click and select "Add as a Maven project". Then reload all maven projects from the maven tool present on the side.
Upvotes: 0
Reputation: 13582
Had the same problem (using IntelliJ), and to solve it went through a variety of steps (not necessarily in this order), and my issue was solved:
Make sure the pom.xml
in your project directory has
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
For that one can also access the Dependencies by clicking ALT
+ Insert
Then search for spring-book-starter-web
(or a similar variation), and click Add
.
Invalidate all Caches (File
> Invalidate All Caches
)
Remove the .idea
folder in your project directory
Uninstall every Java: JDKs and Java 8, that I had installed.
I've used Revo Uninstaller for this, but if one is in Windows, one can also go to Settings
> Apps
> Apps & features
(as it says here).
If one has, one might have to remove the directory .jdk
as well.
Then restart the machine.
Install the JDK for the Project through IntelliJ.
For that, go to File
> Project Structure
> Platform Settings
> SDKs
.
Update IntelliJ to a newer version (assuming it's not up to date).
As I use JetBrains Toolbox, just add to access it and it was straightforward.
One can also update by
Make sure one has MAVEN_REPOSITORY
pointing to the right place.
Eg. C:\Users\goncalo\.m2\repository
.
Confirm that in File
> Settings
> Appearance & Behavior
> Path Variables
.
If the Project directory has a folder called target
,
Go to the Maven (in my case it is on the right-top of the IDE) and, in the Lifecycle
click clean
Then try to run the project again.
Upvotes: 4
Reputation: 141
I was facing this issue and nothing was working out. I tried one of the solution to change maven home path. Intelij -> Preferences -> Build, Execution, Deployment -> Build Tools -> Maven
Here I changed the Maven home path from Use Maven Wrapper
to Bundled (Maven 3)
and everything became fine.
Upvotes: 8
Reputation: 71
sometime project got problem during compile or got problem. Step for the solution :
notice: this tested on windows.
hint: sometime using lower version JDK can help. If you follow manual, try to use same version. My fault is using 19 not 17 (on youtube). The newest version have more advance than before, if you still learning following your mentor/teacher is recommended.
summary from here:
Importing to IntelliJ - Error package org.springframework.boot does not exist
Upvotes: 1
Reputation: 544
If you don't need web related libraries, you can add this dependency instead of spring-boot-starter-web mentioned in other answers:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
Upvotes: 1
Reputation: 91
If any Wrapper folder is present inside .mvn folder of your project delete it. Also, Go to File->Settings->Build,Execution,Deployment->BuildTools->Maven->Set Maven home path as Bundled(Maven 3)
Upvotes: 9
Reputation: 320
1) Close the project 2) Import the project again with auto-import checked
This worked for me. Maybe works for you too.
Upvotes: 6
Reputation: 52498
You need add this dependency
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
then it will work.
Upvotes: 30
Reputation: 385
Add the below section outside dependency management and do an update of project. And then the clean install of maven.
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.10.RELEASE</version>
</parent>
And the below dependency.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
If does not fix (Not Likely to happen) then add the other dependencies mentioned here
Upvotes: 3
Reputation: 11411
You have 0 compile dependencies, only test-compile dependencies defined, because you've commented out spring-boot-starter-data-jpa
. Spring starter's pull other dependencies in (including other starters) to create everything needed at compile time. Un-comment the spring-boot-starter-data-jpa
dependency, and/or re-evaulate what dependencies you actually want.
Upvotes: 13