【发布时间】:2020-03-25 13:27:35
【问题描述】:
首先要说的是,我是一个相对缺乏经验的程序员。
我的任务是将给定的 gradle 项目导入 Spring Boot Tool Suite (sts)。我已经下载了springboot cli、java、gradle。 & 过去,我可以在另一个项目上完美地运行 spring,不幸的是我不得不更换我的硬盘,所以我失去了相当多的下载量。
不过,我的问题分为两部分。首先,我的工具套件(ide?它基本上是 eclipse)没有将我的项目识别为 java 项目,我尝试了很多选项,唯一的解决方法是在 buildCommand 标记中硬编码 org.eclipse.core.javabuilder我的 .project 文件,我不记得为我的上一个项目做了什么。
这里是后端文件夹的目录树(前端不用管)
.
├── build.gradle
├── gradle
│ └── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── settings.gradle
└── src
├── main
│ ├── java
│ │ └── ca
│ │ └── mcgill
│ │ └── ecse321
│ │ └── eventregistration
│ │ ├── EventRegistrationApplication.java
│ │ ├── controller
│ │ │ ├── ApiError.java
│ │ │ ├── EventRegistrationRestController.java
│ │ │ └── RestExceptionHandler.java
│ │ ├── dao
│ │ │ ├── EventRegistrationRepository.java
│ │ │ ├── EventRepository.java
│ │ │ ├── PersonRepository.java
│ │ │ └── RegistrationRepository.java
│ │ ├── dto
│ │ │ ├── EventDto.java
│ │ │ ├── PersonDto.java
│ │ │ └── RegistrationDto.java
│ │ ├── model
│ │ │ ├── Event.java
│ │ │ ├── Person.java
│ │ │ ├── Registration.java
│ │ │ └── RegistrationManager.java
│ │ └── service
│ │ └── EventRegistrationService.java
│ └── resources
│ └── application.properties
└── test
└── java
└── ca
└── mcgill
└── ecse321
└── eventregistration
└── service
├── event
│ └── TestCinema.java
├── payment
│ ├── TestPaymentWithCreditCard.java
│ ├── TestPaymentWithCreditCardData.java
│ └── TestUtils.java
└── role
├── PromoterRoleTestData.java
└── TestPromoterRole.java
另外,这是我的 build.gradle 文件
buildscript {
ext {
springBootVersion = '2.1.2.RELEASE'
}
repositories {
mavenCentral()
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
}
}
apply plugin: 'java'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'
repositories {
mavenCentral()
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-web'
runtimeOnly 'org.postgresql:postgresql'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
}
这解决了我的 java 问题,但我仍然无法让它作为 Spring Boot 应用程序运行。
请帮忙,因为我不知道从哪里继续!!!我需要能够将此项目作为后端服务的 Spring Boot 应用程序运行,因为我将负责使用 vue.js 将其连接到前端服务。 (别担心我得到了那个部分)!
这也是我的 EventRegistration.java 文件
package ca.mcgill.ecse321.eventregistration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.SpringApplication;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.RequestMapping;
@RestController
@SpringBootApplication
public class EventRegistrationApplication {
public static void main(String[] args) {
SpringApplication.run(EventRegistrationApplication.class, args);
}
@RequestMapping("/")
public String greeting() {
return "ECSE321 Event Registration Application - Backend base URL.\n"
+ "Use the API methods to interact with the backend!";
}
}
【问题讨论】:
-
为了识别一个spring应用,IDE通常使用主应用类中的注解。你
EventRegistrationApplication.java的内容是什么? -
@Josh 我在上面编辑了我的帖子以包含 EventRegistrationApplication.java
标签: java spring spring-boot maven gradle