Skip to content

Commit

Permalink
Create downloadable lemminx-maven uber JAR
Browse files Browse the repository at this point in the history
Issue: #430
  • Loading branch information
vrubezhny committed Jul 10, 2023
1 parent 7405e55 commit 854aa43
Show file tree
Hide file tree
Showing 2 changed files with 142 additions and 0 deletions.
9 changes: 9 additions & 0 deletions lemminx-maven/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -197,7 +197,9 @@
<configuration>
<descriptors>
<descriptor>src/assembly/deps.xml</descriptor>
<descriptor>src/assembly/uber.xml</descriptor>
</descriptors>
<finalName>${project.artifactId}</finalName>
</configuration>
<executions>
<execution>
Expand All @@ -207,6 +209,13 @@
<goal>single</goal>
</goals>
</execution>
<execution>
<id>uber-jar</id> <!-- this is used for inheritance merges -->
<phase>package</phase> <!-- bind to the packaging phase -->
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
Expand Down
133 changes: 133 additions & 0 deletions lemminx-maven/src/assembly/uber.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,133 @@
<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.0.0 http://maven.apache.org/xsd/assembly-2.0.0.xsd">
<!--
Copied from jar-with-dependencies because we want to both control the local name
AND attach the binary to the project build artifacts. Workaround for https://issues.apache.org/jira/browse/MASSEMBLY-824
-->
<id>vscode-uber</id>
<formats>
<format>jar</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<dependencySets>
<dependencySet>
<outputDirectory>/</outputDirectory>
<useProjectArtifact>true</useProjectArtifact>
<unpack>true</unpack>
<scope>runtime</scope>
<!-- -
<excludes>
<exclude>org.eclipse.lemminx:org.eclipse.lemminx:*</exclude>
<exclude>org.eclipse.lsp4j:*:*</exclude>
</excludes
-->
<includes>
<include>aopalliance:aopalliance</include>

<include>com.google.code.findbugs:jsr305</include>
<include>com.google.code.gson:gson</include>

<include>com.google.guava:failureaccess</include>
<include>com.google.guava:guava</include>

<include>com.google.inject:guice</include>

<include>com.kotcrab.remark:remark</include>

<include>commons-cli:commons-cli</include>

<include>commons-codec:commons-codec</include>

<include>com.squareup.okhttp3:okhttp</include>
<include>com.squareup.okio:okio</include>

<include>io.takari.aether:aether-connector-okhttp</include>

<include>isorelax:isorelax</include>

<include>javax.annotation:javax.annotation-api</include>

<include>javax.inject:javax.inject</include>

<include>org.apache.commons:commons-lang3</include>

<include>org.apache.httpcomponents:httpclient</include>
<include>org.apache.httpcomponents:httpcore</include>

<include>org.apache.maven:maven-artifact</include>
<include>org.apache.maven:maven-builder-support</include>
<include>org.apache.maven:maven-compat</include>
<include>org.apache.maven:maven-core</include>
<include>org.apache.maven:maven-embedder</include>
<include>org.apache.maven:maven-model</include>
<include>org.apache.maven:maven-model-builder</include>
<include>org.apache.maven:maven-plugin-api</include>
<include>org.apache.maven:maven-repository-metadata</include>
<include>org.apache.maven:maven-resolver-provider</include>
<include>org.apache.maven:maven-settings</include>
<include>org.apache.maven:maven-settings-builder</include>

<include>org.apache.maven.resolver:maven-resolver-api</include>
<include>org.apache.maven.resolver:maven-resolver-impl</include>
<include>org.apache.maven.resolver:maven-resolver-named-locks</include>
<include>org.apache.maven.resolver:maven-resolver-spi</include>
<include>org.apache.maven.resolver:maven-resolver-util</include>

<include>org.apache.maven.shared:maven-shared-utils</include>

<include>org.apache.maven.wagon:wagon-file</include>
<include>org.apache.maven.wagon:wagon-http</include>
<include>org.apache.maven.wagon:wagon-http-shared</include>
<include>org.apache.maven.wagon:wagon-provider-api</include>

<include>org.apiguardian:apiguardian-api</include>

<include>org.codehaus.plexus:plexus-cipher</include>
<include>org.codehaus.plexus:plexus-classworlds</include>
<include>org.codehaus.plexus:plexus-component-annotations</include>
<include>org.codehaus.plexus:plexus-interpolation</include>
<include>org.codehaus.plexus:plexus-sec-dispatcher</include>
<include>org.codehaus.plexus:plexus-utils</include>

<!--
<include>org.eclipse.lemminx:org.eclipse.lemminx</include>
<include>org.eclipse.lsp4j:org.eclipse.lsp4j</include>
<include>org.eclipse.lsp4j:org.eclipse.lsp4j.generator</include>
<include>org.eclipse.lsp4j:org.eclipse.lsp4j.jsonrpc</include>
-->

<include>org.eclipse.sisu:org.eclipse.sisu.inject</include>
<include>org.eclipse.sisu:org.eclipse.sisu.plexus</include>

<include>org.eclipse.xtend:org.eclipse.xtend.lib</include>
<include>org.eclipse.xtend:org.eclipse.xtend.lib.macro</include>
<include>org.eclipse.xtext:org.eclipse.xtext.xbase.lib</include>

<include>org.jsoup:jsoup</include>

<include>org.junit.jupiter:junit-jupiter</include>
<include>org.junit.jupiter:junit-jupiter-api</include>
<include>org.junit.jupiter:junit-jupiter-engine</include>
<include>org.junit.jupiter:junit-jupiter-params</include>

<include>org.junit.platform:junit-platform-commons</include>
<include>org.junit.platform:junit-platform-engine</include>

<include>org.opentest4j:opentest4j</include>

<include>org.relaxng:jing</include>

<include>org.slf4j:jcl-over-slf4j</include>
<include>org.slf4j:slf4j-api</include>

<include>xerces:xercesImpl</include>

<include>xml-resolver:xml-resolver</include>

<include>org.eclipse.lemminx:lemminx-maven</include>
</includes>
</dependencySet>
</dependencySets>
</assembly>

0 comments on commit 854aa43

Please sign in to comment.