Johng Johng - 2 years ago 147
Java Question

Adding classpath to SpringBoot command line start when using maven-spring-boot-plugin

I'm trying to add a classpath to when I run my spring boot application, which is run with the following command

mvn spring-boot:run


I'm currently able to add a classpath folder to my maven tests, using custom arguments which inserted into the field

However this approach has not worked for running the application with
mvn spring-boot:run

Answer Source

The Spring Boot Maven Plugin spawns a JVM which will, by default, include whatever your project says should be on the classpath e.g.

  • ${project.build.outputDirectory} this includes classes and resources
  • dependencies declared in your project's POM

If you need to add things to this classpath, the plugin offers the following:

For example, if you want to add this folder: /this/that/theother to the classpath then you would configure the spring-boot plugin as follows:

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
        <folders>
            <folder>
                /this/that/theother
            </folder>
        </folders>
    </configuration>
</plugin>

With that configuration in place, if you invoke mvn spring-boot:run -X you'll see that the additional folder is included on the front of the classpath ...

[DEBUG] Classpath for forked process: /this/that/theother:...

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download