Unit 6: Working with Maven - Practice Quiz

INT331 — Fundamentals Of Devops 50 Questions
0 Correct 0 Wrong 50 Left
0/50

1 What is the fundamental unit of work in Maven?

A. The Ant Task
B. The Project Object Model (POM)
C. The Gradle File
D. The Build Script

2 Which XML file is the core configuration file for a Maven project?

A. build.xml
B. maven.xml
C. config.xml
D. pom.xml

3 In the standard Maven directory structure, where should the application source code be placed?

A. target/classes
B. src/main/resources
C. src/main/java
D. src/test/java

4 What is the primary purpose of the Maven Build Lifecycle?

A. To define a clearly defined process for building and distributing a particular artifact
B. To configure the IDE settings
C. To write Java code automatically
D. To download dependencies only

5 Which of the following is NOT a built-in Maven build lifecycle?

A. default
B. site
C. debug
D. clean

6 What does the clean lifecycle do?

A. Removes all files generated by the previous build
B. Runs unit tests
C. Compiles the source code
D. Deploys the artifact to a remote repository

7 Which Maven phase is responsible for compiling the source code of the project?

A. validate
B. test
C. package
D. compile

8 In the Maven coordinate system (GAV), what does GroupId represent?

A. A unique identifier for the project's organization or group
B. The type of packaging (e.g., jar, war)
C. The name of the artifact (project)
D. The specific version of the project

9 Where are Maven dependencies stored locally on a developer's machine?

A. In the System32 folder
B. In the bin folder of the Maven installation
C. In the target folder of the project
D. In the Local Repository (usually ~/.m2/repository)

10 Which dependency scope indicates that the dependency is needed for compiling and running the application, and is the default scope?

A. test
B. compile
C. provided
D. runtime

11 What is the purpose of the test dependency scope?

A. The dependency is provided by the JDK or a container
B. The dependency is required for normal use of the application
C. The dependency is not required for compilation but is for execution
D. The dependency is only required for compiling and running tests

12 Which command is used to install the project artifact (e.g., jar) into the local repository?

A. mvn compile
B. mvn install
C. mvn deploy
D. mvn package

13 What is a Maven Plugin?

A. A type of dependency scope
B. A collection of one or more goals that perform specific tasks during the build
C. A configuration file for database connections
D. A library that must be included in the final WAR file

14 Which directory contains the compiled bytecode (.class files) after a build?

A. target/classes
B. src/main/java
C. src/bin
D. dist

15 What defines a specific task that a plugin can perform?

A. Cycle
B. Scope
C. Phase
D. Goal

16 If you want to skip running unit tests during a build, which flag should you use?

A. -DnoTest
B. -Dmaven.test.skip=false
C. --ignore-tests
D. -DskipTests

17 Which element in the pom.xml allows you to manage versions of dependencies for child projects without explicitly defining them in the child?

A. <properties>
B. <dependencyManagement>
C. <dependencies>
D. <plugins>

18 What is the Maven Central Repository?

A. A repository that only contains snapshot versions
B. A repository managed by your company
C. A repository located on your local hard drive
D. A public, community-managed repository where Maven downloads dependencies from by default

19 Which packaging type is the default if the <packaging> tag is omitted in the pom.xml?

A. war
B. jar
C. ear
D. pom

20 What is the order of execution for the default lifecycle phases?

A. test, compile, validate, install, package, deploy
B. validate, compile, test, package, install, deploy
C. validate, test, compile, install, package, deploy
D. compile, validate, package, test, install, deploy

21 What is a SNAPSHOT version in Maven?

A. A version that has been deprecated
B. A stable release version
C. A development version that is subject to change
D. A version that is final and immutable

22 Which command creates a new Maven project structure using a template?

A. mvn create
B. mvn init
C. mvn new
D. mvn archetype:generate

23 In the pom.xml, what is the <properties> section typically used for?

A. Listing the developers
B. Defining the project name
C. Configuring the build output directory
D. Defining reusable variables like version numbers or encoding settings

24 What does the provided dependency scope imply?

A. The dependency is needed for compiling and testing, but will be provided by the runtime environment (e.g., Servlet API)
B. The dependency is needed only for unit tests
C. The dependency is always included in the final packaged artifact
D. The dependency is strictly for the site lifecycle

25 Which phase comes immediately before package in the default lifecycle?

A. compile
B. test
C. validate
D. install

26 Where should non-Java resources (like application.properties or XML config) be placed in a standard Maven project?

A. src/resources
B. src/main/config
C. src/main/java
D. src/main/resources

27 What is a Transitive Dependency?

A. A dependency that is excluded from the build
B. A dependency that is only used for testing
C. A dependency of a dependency that Maven automatically includes
D. A dependency that is manually copied into the project

28 How can you exclude a specific transitive dependency in the pom.xml?

A. Deleting the jar from the local repository
B. Using the <remove> tag
C. Using the <exclusions> tag within the dependency declaration
D. Using the <ignore> tag

29 What is the Super POM?

A. A plugin for managing large projects
B. The default parent POM that all Maven projects inherit from implicitly
C. A POM file that inherits from all other POMs
D. The largest POM file in the project

30 Which Maven plugin is primarily responsible for running unit tests?

A. maven-deploy-plugin
B. maven-surefire-plugin
C. maven-compiler-plugin
D. maven-jar-plugin

31 Which Maven command is used to generate a project documentation site?

A. mvn doc
B. mvn site
C. mvn report
D. mvn documentation

32 What does the validate phase do?

A. Compiles the code
B. Checks if the tests pass
C. Validates that the project is correct and all necessary information is available
D. Validates the XML syntax of the pom.xml only

33 In a multi-module project, what packaging type must the Parent POM have?

A. war
B. bundle
C. jar
D. pom

34 Which command would you use to run a Maven build in offline mode?

A. mvn --offline package
B. mvn -offline package
C. mvn -no-net package
D. mvn -o package

35 What is the purpose of the deploy phase?

A. To copy the final package to the local repository
B. To copy the final package to the remote repository for sharing with other developers and projects
C. To run the application on a local server
D. To generate the source code

36 The <modules> tag in a pom.xml is used for:

A. Configuring Java modules (Jigsaw)
B. Defining plugin configurations
C. Defining external libraries
D. Listing sub-projects (aggregating) in a multi-module build

37 What is the Effective POM?

A. The POM file located in the target directory
B. The result of merging the project's POM with its parent POMs and the Super POM
C. A POM that has no errors
D. A plugin that optimizes the POM

38 Which directory holds the source code for unit tests?

A. test/java
B. src/test/java
C. src/tests
D. src/main/test

39 If a dependency is defined in <dependencies>, what happens if the version is missing?

A. Maven asks the user for the version
B. The build fails, unless the version is managed in <dependencyManagement> of a parent
C. Maven downloads the release version
D. Maven downloads the latest version

40 What is the Maven command to remove the target directory?

A. mvn erase
B. mvn remove
C. mvn clean
D. mvn delete

41 Which plugin is used to compile Java sources?

A. maven-javac-plugin
B. maven-build-plugin
C. maven-source-plugin
D. maven-compiler-plugin

42 How do you specify the Java version for compilation in the pom.xml?

A. Using <java.version> tag in dependencies
B. Using the <jdk> tag
C. It is automatically detected from the OS
D. Using maven.compiler.source and maven.compiler.target properties

43 What is the result of mvn package for a project with <packaging>war</packaging>?

A. An EAR file
B. A JAR file
C. A ZIP file
D. A WAR file in the target directory

44 Which of the following describes the Dependency Mediation rule: 'Nearest Definition'?

A. Maven errors out if duplicate dependencies are found
B. Maven uses the newest version available
C. Maven uses the version of the dependency closest to your project in the dependency tree
D. Maven uses the version of the dependency declared deepest in the dependency tree

45 What is the purpose of the settings.xml file in Maven?

A. To write unit tests
B. To define project dependencies
C. To configure Maven installation settings, such as proxy servers and local repository location
D. To configure the compiler version

46 Which scope should be used for a JDBC driver implementation needed only at runtime?

A. runtime
B. compile
C. test
D. provided

47 What is the syntax to execute a specific goal from a plugin directly?

A. mvn plugin-goal
B. mvn plugin:goal
C. mvn -run plugin goal
D. mvn plugin::goal

48 Which command displays the dependency tree of the project?

A. mvn dependency:tree
B. mvn tree:list
C. mvn list:dependency
D. mvn show:dependencies

49 In the pom.xml, the <modelVersion> element usually contains which value?

A. 5.0.0
B. 3.0.0
C. 1.0.0
D. 4.0.0

50 Where does Maven look for the settings.xml file by default?

A. In the .m2 directory of the user's home directory
B. In the Windows Registry
C. In the Java installation folder
D. Inside the project folder