Tôi đang đọc sách Introducing Spring Framework và tôi bị kẹt trong ví dụ đầu tiên. Tôi chưa bao giờ sử dụng Gradle trước đây. Bằng cách nào đó trình biên dịch không hiểu chú thích được sử dụng trong mã của tôi. Mặc dù tôi đã sử dụng phụ thuộc mùa xuân trong tệp gradle.build
.Tại sao việc biên dịch Gradle không thành công trong ví dụ này?
Vì mục đích hoàn thành, tôi sẽ đăng tất cả 4 tệp từ ví dụ này.
build.gradle:
apply plugin: 'java'
apply plugin: 'application'
mainClassName = System.getProperty("mainClass")
repositories {
mavenCentral()
}
dependencies {
compile 'org.springframework:spring-context:4.0.5.RELEASE'
}
MessageService.java:
package com.apress.isf.spring;
public interface MessageService {
public String getMessage();
}
HelloWorldMessage.java:
package com.apress.isf.spring;
public class HelloWorldMessage implements MessageService {
public String getMessage(){
return "Hello World";
}
}
Application.java:
package com.apress.isf.spring;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
@Configuration
@ComponentScan
public class Application {
@Bean
MessageService helloWorldMessageService() {
return new HelloWorldMessage();
}
public static void main(String[] args) {
ApplicationContext context = new AnnotationConfigApplicationContext(Application.class);
MessageService service = context.getBean(MessageService.class);
System.out.println(service.getMessage());
}
}
Tôi chạy ví dụ với:
gradle run -DmainClass=com.apress.isf.spring.Application
Sử dụng Ubuntu.
Kết quả là:
~/src/main/java/com/apress/isf/spring/Application.java:7: error: cannot find symbol
@Configuration
^
symbol: class Configuration
~/src/main/java/com/apress/isf/spring/Application.java:8: error: cannot find symbol
@ComponentScan
^
symbol: class ComponentScan
2 errors
:compileJava FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':compileJava'.
> Compilation failed; see the compiler error output for details.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 5.025 secs
bất cứ ai có thể giúp tôi với chạy ví dụ này? Trân trọng.
Wow. Cảm ơn bạn. Bằng cách nào đó tôi không nghĩ về điều đó. Chưa có thông báo lỗi cho cuốn sách này. Cảm ơn bạn! :) –