所以我試圖在項目配置設置中使用Spring選項在IntelliJ中啓動一個新的Web項目,但是當我最終獲得項目設置時,好像任何新的控制器I即使我註釋它們,make也會被忽略。 @RequestMapping似乎永遠不會被映射。我曾經能夠訪問的所有文件都位於Web目錄的根目錄中。IntelliJ Spring Gradle項目註釋不工作
之後永遠無法得到這個工作,我切換到Gradle,以便我可以導入一些額外的庫來測試我的項目。我gradle這個文件看起來像如下:
buildscript { repositories { mavenCentral() } dependencies { classpath("org.springframework.boot:spring-boot-gradle-plugin:1.2.2.RELEASE") } } apply plugin: 'java' apply plugin: 'eclipse' apply plugin: 'idea' apply plugin: 'spring-boot' sourceSets { main { java { srcDirs = ['src/main/java'] } } test { java { srcDirs = ['src/main/test'] } } } jar { baseName = 'gs-rest-service' version = '0.1.0' } repositories { mavenCentral() } sourceCompatibility = 1.7 targetCompatibility = 1.7 dependencies { compile("org.springframework.boot:spring-boot-starter-web") testCompile("junit:junit") testCompile "org.mockito:mockito-core:1.+" } task wrapper(type: Wrapper) { gradleVersion = '2.3' }
是否有某種形式的配置文件的我必須填寫告訴項目到哪裏尋找控制器或不工作的一抹灰塵像我期望它?
這裏是我的控制器是什麼樣子:
@RestController public class GreetingController { public static final String greeting = "Hello, %s!"; private final AtomicLong counter = new AtomicLong(); @RequestMapping("/greeting") public Greeting greeting(@RequestParam(value="name", defaultValue = "World") String name){ return new Greeting(counter.incrementAndGet(), String.format(greeting, name)); } }
而且類@SpringBootApplication註釋:
@SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
我的文件夾結構:
Test - .gradle - .idea - build - gradle - out - src - main - java - controllers - Application.java - GreetingController.java - test - web - WEB-INF - (empty)
我真的很困惑關於Spring在這一點上的工作原理,因爲註釋尚未發揮作用。我是否缺少配置文件? Spring入門教程說我不需要它,但也許是因爲我在使用IntelliJ。
最後要注意的是我正在運行使用本地Tomcat實例。
謝謝大家!
您是救生員。一旦我擴展了文檔中提到的類,它就會在日誌中運行並顯示Spring啓動信息。 – CoderOfHonor 2015-04-01 19:39:44