Home  Java   Difference ...

Difference between mvn test-compile and mvn compile

The mvn test-compile and mvn compile commands in Maven serve different purposes in the build lifecycle, focusing on compiling different sets of source code. Here’s a detailed comparison of the two:

mvn compile

mvn test-compile

Detailed Comparison

Aspectmvn compilemvn test-compile
Primary FocusCompiles main source codeCompiles test source code
Source Directorysrc/main/javasrc/test/java
Output Directorytarget/classestarget/test-classes
Lifecycle PhasesExecutes up to the compile phaseExecutes up to the test-compile phase (includes compile)
DependenciesMain dependenciesMain and test dependencies
When to UseWhen you need to compile the application codeWhen you need to compile test code (and application code if not already compiled)

Maven Build Lifecycle

Understanding the Maven build lifecycle can clarify why these commands exist:

Practical Implications

Published on: Jun 23, 2024, 06:44 AM  
 

Comments

Add your comment