springboot学习:3.第一个Spring Boot Application

(题外话:我写的这些博文,比起像学习手册来说,更像是我学习过程的再现,自己所踩过的坑,所以单个看会觉得很奇怪,如果有兴趣可以联系我的上下博文,谢谢。)
操作背景:java version “1.7.0_51”;Spring CLI v1.3.0.RELEASE;Apache Maven 3.3.9,并且测试运行成功了,可是还是遇到了本篇的问题。(因为不是安装官方配置的版本)
测试运行成功可了解:
springboot学习:1.安装
springboot学习:2.测试运行
下面开始Application:

①创建pom
选择一个目录后,创建如下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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.example</groupId>
	<artifactId>myproject</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.1.11.RELEASE</version>
	</parent>
	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
	</dependencies>
</project>

该pom声明了父pom文件,添加了spring-boot-starter-web依赖用来创建web项目。

②编写代码
在该目录下创建src/main/java文件夹,是为了模仿maven的目录排版习惯。
创建src/main/java/Example.java文件,如下:

import org.springframework.boot.*;
import org.springframework.boot.autoconfigure.*;
import org.springframework.web.bind.annotation.*;
@RestController
@EnableAutoConfiguration
public class Example {
	@RequestMapping("/")
	String home() {
		return "Hello World!";
	}
	public static void main(String[] args) {
		SpringApplication.run(Example.class, args);
	}
}

@RestController标签属于springframework的标签,同@Controller一样,声明一个web控制器;
@RequestMapping标签用来拦截请求路径,当该标签内的请求出现时,则调用该标签声明的方法,即home( );
@EnableAutoConfiguration是自动装配标签,用来自动装配所需环境及上下文。
main( )方法用来告知SpringApplication的run( )方法来运行本例。

③运行本例
在该项目目录下执行mvn spring-boot:run命令,出现了如下报错:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project myproject: Fatal error compiling: 无效的标记: -parameters -> [Help 1]

因为解决过该问题,所以通过初学MAVEN之compile失败把这一步解决了。可是紧接着还是有了别的问题。问题大概如下:

[WARNING] Error injecting: org.springframework.boot.maven.RunMojo
java.lang.TypeNotPresentException: Type org.springframework.boot.maven.RunMojo not present
        at org.eclipse.sisu.space.URLClassSpace.loadClass(URLClassSpace.java:147)
        at org.eclipse.sisu.space.NamedClass.load(NamedClass.java:46)
        at org.eclipse.sisu.space.AbstractDeferredClass.get(AbstractDeferredClass.java:48)
        at com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:81)
        at com.google.inject.internal.InternalFactoryToInitializableAdapter.provision(InternalFactoryToInitializableAdapter.java:53)

[ERROR] Failed to execute goal org.springframework.boot:spring-boot-maven-
plugin:2.1.11.RELEASE:run (default-cli) on project myproject: Execution default-cli
 of goal org.springframework.boot:spring-boot-maven-plugin:2.1.11.RELEASE:run 
 failed: Unable to load the mojo 'run' in the plugin 
 'org.springframework.boot:spring-boot-maven-plugin:2.1.11.RELEASE' due to an API
  incompatibility: 
  org.codehaus.plexus.component.repository.exception.ComponentLookupException: 
  org/springframework/boot/maven/RunMojo : Unsupported major.minor version 52.0

看的头大,折腾了好久。怀疑自己因为偷懒,没有按官方提示的java8和springboot2来操作。无奈,只能重新开始,安装官方要求来操作。
重新配置如下:java version “1.8.0_231”,Spring CLI v2.1.11.RELEASE,Apache Maven 3.3.9。(解决java双版本可看解决java7/8共存问题
再按以上步骤可运行成功。
界面停留在如下:
在这里插入图片描述
此时访问http://localhost:8080/会出现“Hello World!”字样。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
在你的问题中,你提到了几个关于Spring Boot启动报错的问题和解决方案。首先,你遇到了一个错误提示为"Cannot resolve org.springframework.boot:spring-boot-starter-parent:2.4.3"的问题。这个错误通常是由于Maven无法解析相关的依赖引起的。 解决这个问题的方法是检查你的Maven配置和依赖项是否正确。你可以尝试以下步骤: 1. 首先,检查你的pom.xml文件中是否包含了正确的Spring Boot版本以及相应的依赖项。确认你的pom.xml文件中的parent标签是否指向了正确的Spring Boot版本。 2. 如果你确认pom.xml文件中的配置正确无误,那么可能是由于Maven本地仓库缓存的问题导致的。你可以尝试删除Maven本地仓库中的相关文件夹,然后重新构建项目。你已经提到了删除C:\Program Files\apache-maven-3.6.3\repository\org\springframework\boot\spring-boot-starter-parent\2.4.3文件夹,这是一个可行的解决方案。 解决了第一个问题后,你遇到了第二个问题,错误提示为"Could not find artifact org.springframework.boot:spring-boot-starter-parent:pom:2.7.5 in central"以及"Cannot resolve symbol 'SpringBootApplication'"和"Cannot resolve symbol 'SpringApplication'"。 这个问题可能是由于你在pom.xml文件中指定了一个不存在的Spring Boot版本引起的。请确保你的pom.xml文件中的Spring Boot版本是有效的且存在的。 另外,关于"Cannot resolve symbol 'SpringBootApplication'"和"Cannot resolve symbol 'SpringApplication'"的问题,可能是由于你没有正确导入相关的Spring Boot依赖项或者IDE的自动导入功能出现了问题。你可以尝试以下步骤来解决这个问题: 1. 确认你的pom.xml文件中有正确的Spring Boot启动器依赖项,比如spring-boot-starter-web等。 2. 检查你的IDE是否正确导入了相关的依赖项。有些IDE会自动导入依赖项,但有时会出现错误。你可以尝试手动导入这些依赖项,或者重新导入整个项目。 总结一下,解决这些问题的关键是确保你的Maven配置和依赖项正确,并且检查你的IDE是否正确导入了相关的依赖项。如果问题仍然存在,你可以尝试清理和重新构建项目,或者尝试使用其他版本的Spring Boot
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值