Câu 1. Phần nào trong tập tin pom.xml cho phép bạn cung cấp các giá trị có thể được sử dụng lại trong các phần khác của tập tin pom.xml?
Plugins
Build
Properties
Parent
Câu 2. Nếu bạn muốn xây dựng và đóng gói artifact của mình bằng mục tiêu Maven package nhưng không muốn thực thi các bài kiểm tra đơn vị, biến môi trường và giá trị nào bạn sẽ sử dụng?
maven.test.ignore=TRUE
maven.test.run=FALSE
maven.test.skip=TRUE
maven.verify.execute=FALSE
Câu 3. Khi xây dựng một dự án Maven EAR và chỉ định cấu hình của các dự án nào sẽ được bao gồm, phần tử nào trong cấu hình plugin chứa các dự án Enterprise Java Bean?
modules/webModule
modules/ejbModule
modules/enterpriseModules
modules/services
Câu 4. Mục tiêu nào được thực thi để tạo và triển khai một trang web tài liệu?
deliver
site
doc
deploy
Câu 5. Lệnh mvn -version làm gì?
Nó xây dựng dự án Maven của bạn.
Nó cài đặt Maven trên máy tính của bạn.
Nó cập nhật Maven lên phiên bản mới nhất.
Nó in ra phiên bản Maven đã được cài đặt trên máy tính của bạn.
Câu 6. Có một số thuộc tính có sẵn để sử dụng trong tập tin pom.xml để tham khảo các chi tiết của dự án, như groupId và version. Tất cả các thuộc tính này bắt đầu bằng cái gì?
pom
maven
jar
project
Câu 7. Cấu trúc thư mục nào chứa mã nguồn của artifact của bạn?
src/code
src/test/java
src/main/java
src/main/resources
Câu 8. Lệnh nào được sử dụng để chạy vòng đời clean sau đó là verify, install, và package với Maven?
mvn clean install package
mvn package
mvn clean verify install package
mvn install package
Câu 9. Bạn sẽ sử dụng mục tiêu nào với Plugin Dependency để xác định các phụ thuộc được bao gồm nhưng không được sử dụng, cũng như những phụ thuộc bạn đang sử dụng mà bạn chưa xác định?
dependency:tree
dependency:properties
dependency:evaluate
dependency:analyze
Câu 10. Trong một dự án multimodule, nếu bạn có một plugin được ràng buộc vào một phase trong phần tử parent, nó sẽ được ràng buộc vào cùng một phase trong module. Chiến lược nào bạn có thể sử dụng để ngăn plugin thực thi trong module?
Trong phần tử excluded của phần build của POM, liệt kê plugin bạn không muốn chạy.
Đặt phase trong module thành none.
Đặt một giá trị trong cấu hình của plugin trong module để bị loại bỏ như thế này: TRUE.
Không chỉ định plugin trong module.
Câu 11. Khi xây dựng một ứng dụng web với dự án loại WAR, thư mục dự án nào nên chứa style sheet, JavaScript và các tệp tĩnh khác?
src/main/static
src/main/web
src/main/resources
src/main/webapp
Câu 12. Khi thực hiện một quy trình xây dựng, Plugin Maven nào sẽ cho phép bạn đặt phiên bản cụ thể của artifact để xây dựng mà không cần sửa đổi thủ công tập tin pom.xml?
Compiler
Surefire
Versions
Javadoc
Câu 13. Khi xây dựng một Maven Archetype, đường dẫn và tệp nào của mô tả archetype xác định cách sắp xếp các tệp nguyên mẫu?
Câu 14. Đó là một loại đóng gói hợp lệ cho một dự án Maven?
WAR
tất cả các câu trả lời này
POM
EAR
Câu 15. Khi hai phụ thuộc của dự án Maven của bạn giới thiệu cùng một phụ thuộc chuyển tiếp với các phiên bản khác nhau, phụ thuộc nào(s) sẽ được bao gồm trong danh sách phụ thuộc cho dự án của bạn?
phụ thuộc có phiên bản
cao hơn
phụ thuộc chuyển tiếp đó đến từ phụ thuộc được liệt kê đầu tiên trong tập tin pom.xml
phụ thuộc chuyển tiếp đó đến từ phụ thuộc được liệt kê cuối cùng trong tập tin pom.xml
phiên bản phụ thuộc chuyển tiếp của artifact gần nhất với dự án của bạn
Câu 16. Nhiều tổ chức thiết lập máy chủ địa phương để lưu trữ các repository Maven trung tâm. Để tận dụng repository Maven của công ty của bạn như một proxy cho repository Maven trung tâm, bạn nên đặt phần tử nào vào tập tin settings.xml?
Replacements
Proxies
Mirrors
LocalRepositories
Câu 17. Plugin Maven nào bạn sẽ sử dụng để chỉ định phiên bản của trình biên dịch để mục tiêu cũng như cấp độ nguồn của ngôn ngữ?
Versions
Surefire
Target
Compiler
Câu 18. Nếu máy tính của bạn đứng sau một proxy, bạn nên chỉ định cài đặt máy chủ proxy ở đâu để Maven có thể truy cập các tài nguyên từ xa?
.m2/proxy.txt
pom.xml
proxy.xml
settings.xml
Câu 19. Biến môi trường nào bạn có thể thay đổi để tăng bộ nhớ Maven sử dụng?
MAVEN_OPTS
M2_HOME
MAVEN_MEMORY
PATH
Câu 20. Bạn có thể sử dụng Maven để chạy các bài kiểm tra đơn vị song song như thế nào?
Không thể làm điều này.
Thực hiện phụ thuộc JUnit và thêm cấu hình để đặt phần tử song song thành true.
Chỉ định Plugin Maven Surefire và thêm cấu hình để đặt phần tử song song thành true.
Di chuyển mỗi bộ kiểm tra vào một submodule riêng biệt.
Câu 21. Lệnh mvn dependency:tree làm gì?
Xác minh các phụ thuộc được xác định trong tệp POM.
In ra một báo cáo về các phụ thuộc của dự án của bạn dưới dạng cây.
Tải về tất cả các phụ thuộc chuyển tiếp.
Cắt tỉa các phụ thuộc không sử dụng từ cây phụ thuộc của bạn.
Câu 22. Làm thế nào để chạy một bài kiểm tra đơn vị duy nhất trong Maven?
Maven mặc định chỉ chạy một bài kiểm tra đơn vị.
Sử dụng cờ -Dtest= và truyền vào tên của bài kiểm tra.
Sử dụng một plugin có thể chỉ định bài kiểm tra bạn muốn chạy.
Không thể làm điều này.
Câu 23. Profiles Maven có thể được kích hoạt bằng cách nào?
bằng cách gọi một cách rõ ràng các profiles bằng cách sử dụng cờ -P
dựa trên biến môi trường
tất cả các câu trả lời này
thông qua cài đặt Maven
Câu 24. Tại sao lệnh mvn install sẽ không triển khai bất kỳ artifacts nào lên một kho lưu trữ từ xa?
Tên của artifact cũng phải được chỉ định trong lệnh.
Tên của kho lưu trữ từ xa cũng phải được chỉ định trong lệnh.
Triển khai artifacts lên một kho lưu trữ từ xa phải được thực hiện thủ công.
Giai đoạn triển khai của vòng đời Maven mặc định đến sau giai đoạn cài đặt.
Câu 25. Giả sử bạn muốn bao gồm một tệp properties trong JAR được tạo ra bởi quá trình xây dựng Maven của bạn. Bạn nên đặt nó vào thư mục nào?
${basedir}/src/main/resources
${basedir}/src/main/java/resources
${basedir}/resources
${basedir}/src/main/properties
Câu 26. Cấu trúc nào trong tệp settings.xml cho phép linh hoạt các thuộc tính dựa trên một giá trị cho thời gian chạy của Maven?
Environment
Properties
Switch
Profiles
Câu 27. Điều gì đồng nghĩa với việc phạm vi của một phụ thuộc là runtime?
Phụ thuộc không cần thiết để biên dịch dự án, nhưng cần thiết khi chạy.
Phụ thuộc cần thiết khi biên dịch và khi chạy, và phải được đóng gói để phân phối.
Phụ thuộc cần thiết khi biên dịch và khi chạy, nhưng KHÔNG cần thiết phải được đóng gói để phân phối.
Phụ thuộc được yêu cầu cho việc biên dịch.
Câu 28. Nếu bạn muốn sử dụng một tệp JAR phát triển cục bộ trong dự án khác và tệp JAR đó chưa được triển khai vào repository Maven trung tâm hoặc repository mirror được cấp phát địa phương của bạn, mục tiêu Maven nào bạn cần thực hiện trên dự án JAR được phát triển cục bộ?
package
install
compile
test
Câu 29. Loại đóng gói mặc định cho artifact của một dự án Maven là gì?
Nó tạo ra một dự án Maven mới bằng mẫu Maven mặc định
Nó xóa và cài đặt dự án sample-maven-project
Câu 31. Khi định nghĩa một phụ thuộc được bao gồm trong bộ chứa thời gian chạy, phạm vi nào bạn sử dụng trong tập tin pom.xml?
provided
compile
execution
runtime
Câu 32. Bạn truyền đối số nào cho Maven để cập nhật SNAPSHOT từ kho lưu trữ từ xa?
-U
-J
-X
-S
Câu 33. Khi thực hiện một phiên bản bằng cách sử dụng plugin Maven release, biến môi trường nào cho chế độ batch được sử dụng để xác định con dấu đặt trong SCM để chỉ ra trạng thái của artifact cho phiên bản thực tế?
tag
scmMark
developmentVersion
releaseVersion
Câu 34. Đây là hai ứng dụng chung của các plugin. Đầu tiên là xây dựng và thứ hai là _
reporting
servers
dependencies
distribution management
Câu 35. Lệnh mvn clean làm gì?
Nó loại bỏ thư mục target
Nó cập nhật phiên bản của các plugin được xác định trong tập tin POM.
Nó loại bỏ các phụ thuộc không sử dụng trong dự án của bạn
Nó xây dựng dự án của bạn
Câu hỏi 36: Dưới đây là một định nghĩa của Plugin JAR Maven, trong đó lớp chính được đặt thành com.palmer.bethan.App. Hiệu ứng của điều này là gì?
Maven sẽ tạo ra một tập tin JAR có thể chạy, trong đó có thể chạy lớp App.
Maven sẽ chỉ bao gồm lớp App khi biên dịch mã nguồn.
Maven sẽ thêm một phương thức main trống vào lớp App.
Câu hỏi 37: Giả sử bạn đang đóng gói một dự án Maven và gặp thông báo lỗi sau: "[WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!" Bạn sẽ thêm điều gì vào tệp POM của mình để đặt mã hóa nền tảng nhằm đảm bảo việc xây dựng không phụ thuộc vào nền tảng?
<project.build.resources>
<maven.compiler.source>
<project.build.sourceEncoding>
<project.compiler.encoding>
Câu hỏi 38: Tại sao bạn có thể không muốn bao gồm các phần tử groupId và version trong các tệp POM con?
Nếu bao gồm các phần tử này, một lỗi sẽ được ném khi bạn cố gắng xây dựng dự án.
Các phần tử này được kế thừa từ tệp POM cha và không cần phải lặp lại.
Các tệp POM con nên bao gồm các định nghĩa của chỉ phụ thuộc và plugin.
Các giá trị trong tệp POM cha sẽ bị ghi đè bởi những gì được xác định trong tệp POM con.
Câu hỏi 39: Tệp settings.xml cung cấp các cài đặt cụ thể của người dùng cho Maven được chứa trong thư mục nào theo mặc định?
${maven.home}/${user.name}/settings.xml
${user.home}/.m2/settings.xml
${maven.home}/conf/settings.xml
${user.home}/maven/settings.xml
Câu hỏi 40: Giả sử bạn đang sử dụng Maven trong môi trường doanh nghiệp và, để tiết kiệm băng thông, bạn muốn ngăn cản việc số lượng lớn các nhà phát triển phải tải xuống cùng một phụ thuộc từ internet. Bạn làm gì để hạn chế điều này?
Tạo một kho lưu trữ nội bộ của doanh nghiệp để lưu trữ các bản sao của các tác phẩm cần thiết.
Không thể thực hiện điều này.
Khi xác định phụ thuộc, đặt phạm vi thành "provided".
Mỗi nhà phát triển nên xác định phụ thuộc trong tệp POM trong bản sao cục bộ của dự án.
Câu hỏi 41: Trong các dự án đa mô-đun, các tệp POM con kế thừa từ tệp POM cha những gì?
tất cả các câu trả lời này
phụ thuộc
groupId
version
Câu hỏi 42: Dưới đây là một báo cáo được tạo ra cho một dự án đa mô-đun với Plugin Checkstyle. Tại sao các liên kết được tô sáng tới hai dự án con không hoạt động?
Plugin Checkstyle không hoạt động trên các mô-đun con.
Mỗi báo cáo Checkstyle được đặt trong thư mục target/site của mô-đun tương ứng.
Tất cả các liên kết trong các báo cáo Checkstyle phải được chỉ định trong định nghĩa plugin.
Các báo cáo Checkstyle cho các mô-đun con phải được đặt sau một tường lửa.
Câu hỏi 43: Plugin xây dựng nào cho phép bạn tạo một tập tin JAR "béo" chứa tất cả các phụ thuộc trong tập tin JAR cuối cùng?
Fatjar
Shade
Dependency
Package
Câu hỏi 44: Phạm vi mặc định cho các phụ thuộc Maven là gì?
Test
Compile
Runtime
Build
Câu hỏi 45: Bao nhiêu lần compiler:compile được gọi khi thực thi lệnh mvn clean compile test package?
một lần
hai lần
không
ba lần
Câu hỏi 46: Lợi ích của việc sử dụng các thuộc tính trong Maven là gì?
Các thuộc tính cung cấp một mẫu cho bạn để x
ây dựng các dự án Maven với một cấu trúc nhất định.
Các thuộc tính cho phép bạn kế thừa các giá trị từ tệp POM cha trong tệp POM con.
Bạn có thể tránh việc mã hóa cứng các giá trị trong nhiều nơi.
Các thuộc tính làm tăng tốc quá trình xây dựng Maven của bạn.
Câu hỏi 47: Các giai đoạn của chu trình làm sạch là gì?
pre-clean, clean và post-clean
Compile, clean và install
clean và install
validate, clean và deploy
Câu hỏi 48: Một phụ thuộc thời gian biên dịch của một phụ thuộc cho dự án của bạn thường được gọi là phụ thuộc a_.
Transitive
runtime
provided
test
Câu hỏi 49: Plugin có thể sử dụng giai đoạn validate trong chu trình mặc định để làm gì?
để kiểm tra tệp POM cha xác định tất cả các tệp POM con
để thực hiện kiểm tra trước khi xây dựng dự án
để đảm bảo các plugin được xác định trong tệp POM ở thứ tự đúng
để kiểm tra cấu trúc dự án là chính xác sau khi xây dựng dự án
Câu hỏi 50: Làm thế nào để kiểm tra các phụ thuộc không sử dụng trong dự án của bạn?
Chạy lệnh mvn clean và xem xét các plugin không được đề cập trong đầu ra.
Bạn sẽ cần phải làm điều này một cách thủ công.
Bao gồm plugin dependency vào tệp POM của bạn và chạy lệnh unpack.
Chạy lệnh analyze của plugin dependency.
Câu hỏi 51: Tại sao việc tránh ghi đè cấu trúc thư mục mặc định là thực hành tốt nhất?
Giữ cấu trúc mặc định giảm thời gian làm quen, vì các nhà phát triển nhận diện nó.
Ghi đè cấu trúc mặc định rất phức tạp.
Ghi đè cấu trúc mặc định sẽ làm cho Maven mất thêm thời gian để biên dịch mã của bạn.
tất cả các câu trả lời trên
Câu hỏi 52: Mục đích chính của giai đoạn cài đặt là gì?
để biên dịch mã nguồn của dự án
để cài đặt tất cả các phụ thuộc từ xa
để triển khai các tác phẩm cuối cùng của dự án vào kho lưu trữ Maven từ xa
để sao chép các tác phẩm cuối cùng của dự án vào kho lưu trữ Maven cục bộ
Câu hỏi 53: Làm thế nào để bỏ qua các bài kiểm tra khi chạy lệnh mvn package?
Sử dụng -Dtest=skip
Sử dụng -DskipTests=true
Sử dụng -Dtests=pass
Sử dụng một plugin có thể được cấu hình để bỏ qua các bài kiểm tra
Câu hỏi 54: Dưới đây là định nghĩa của một gương trong settings.xml. Phần tử <mirrorOf>\*</mirrorOf> nói với Maven làm gì?