anchor.diff:  </plugin>
   ----
   
  -Either way, once your pom is configured, you can assemble and run your jar. E.g.:
  +Either way, once the pom is configured, you can assemble and run the jar. E.g.:
   
   [source,bash]
   ----
  
positive.code:     &lt;/plugins&gt;
  &lt;/build&gt;
  ----
  This configuration will build an app with the framework-provided main class, namely `io.bootique.Bootique`. If you want
  to use a custom main class, you will need to redefine Maven `main.class` property:
  
  [source,xml]
  ----
  <properties>
      <main.class>com.foo.Application</main.class>
  </properties>
  ----
  If you don't want inherit from the framework pom, you will need to explicitly provide the following (fairly long)
  configuration similar to the one found in
  https://repo1.maven.org/maven2/io/bootique/parent/bootique-parent/0.14/bootique-parent-0.14.pom[`bootique-parent`]:
  
  [source,xml]
  ----
  <plugin>
  
negative.code: [#runnable-jar-with-lib]
  === Runnable Jar with "lib" Folder
  
  "Jar-with-dependencies" packaging described above is extremely convenient. It produces a single file that is easy to move
  around and execute. It is not without downsides though:
  
  * It is incompatible with Java Platform Module System (JPMS). Java allows only one `module-info.class` file per `.jar`.
  So if your app or its dependencies contain one or more of those module descriptors, `maven-shade-plugin` won't be
  able to package them properly.
  * It is incompatible with https://openjdk.java.net/jeps/238[multi-release jar files]. Actually there's no technical
  reason why `maven-shade-plugin` can't repackage such jars correctly, but as of this writing (plugin version 3.2.1) it
  doesn't, losing Java version-specific code.
  
  An alternative way of packaging that does not have these limitations is a folder with a runnable application
  jar at the root level and all dependency jars in the `lib/` folder next to it:
  