mirror of
https://github.com/gyurix1968/guacamole-client.git
synced 2025-09-05 20:57:40 +00:00
380 lines
14 KiB
XML
380 lines
14 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!--
|
|
Licensed to the Apache Software Foundation (ASF) under one
|
|
or more contributor license agreements. See the NOTICE file
|
|
distributed with this work for additional information
|
|
regarding copyright ownership. The ASF licenses this file
|
|
to you under the Apache License, Version 2.0 (the
|
|
"License"); you may not use this file except in compliance
|
|
with the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing,
|
|
software distributed under the License is distributed on an
|
|
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
KIND, either express or implied. See the License for the
|
|
specific language governing permissions and limitations
|
|
under the License.
|
|
-->
|
|
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
|
|
http://maven.apache.org/maven-v4_0_0.xsd">
|
|
|
|
<modelVersion>4.0.0</modelVersion>
|
|
<groupId>org.apache.guacamole</groupId>
|
|
<artifactId>guacamole</artifactId>
|
|
<packaging>war</packaging>
|
|
<version>1.6.0</version>
|
|
<name>guacamole</name>
|
|
<url>http://guacamole.apache.org/</url>
|
|
|
|
<parent>
|
|
<groupId>org.apache.guacamole</groupId>
|
|
<artifactId>guacamole-client</artifactId>
|
|
<version>1.6.0</version>
|
|
<relativePath>../</relativePath>
|
|
</parent>
|
|
|
|
<description>
|
|
The Guacamole web application, providing authentication and an HTML5
|
|
remote desktop client.
|
|
</description>
|
|
|
|
<!-- All applicable licenses -->
|
|
<licenses>
|
|
<license>
|
|
<name>Apache License, Version 2.0</name>
|
|
<url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
|
|
<distribution>repo</distribution>
|
|
</license>
|
|
</licenses>
|
|
|
|
<!-- Git repository -->
|
|
<scm>
|
|
<url>https://github.com/apache/guacamole-client</url>
|
|
<connection>scm:git:https://git.wip-us.apache.org/repos/asf/guacamole-client.git</connection>
|
|
</scm>
|
|
|
|
<build>
|
|
<plugins>
|
|
|
|
<!-- Build AngularJS portion of application using NPM -->
|
|
<plugin>
|
|
<groupId>com.github.eirslett</groupId>
|
|
<artifactId>frontend-maven-plugin</artifactId>
|
|
<version>1.11.3</version>
|
|
<configuration>
|
|
<workingDirectory>src/main/frontend</workingDirectory>
|
|
<installDirectory>${project.build.directory}</installDirectory>
|
|
|
|
<!-- Newer Node.js requires the following to avoid an "ERR_OSSL_EVP_UNSUPPORTED"
|
|
error when WebPack attempts to use its default hash (MD4) for content hashing -->
|
|
<environmentVariables>
|
|
<NODE_OPTIONS>--openssl-legacy-provider</NODE_OPTIONS>
|
|
</environmentVariables>
|
|
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>install-node-and-npm</id>
|
|
<goals>
|
|
<goal>install-node-and-npm</goal>
|
|
</goals>
|
|
<configuration>
|
|
<nodeVersion>v18.18.0</nodeVersion>
|
|
<npmVersion>9.8.1</npmVersion>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>npm-ci</id>
|
|
<goals>
|
|
<goal>npm</goal>
|
|
</goals>
|
|
<configuration>
|
|
<arguments>ci</arguments>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>npm-build</id>
|
|
<phase>generate-resources</phase>
|
|
<goals>
|
|
<goal>npm</goal>
|
|
</goals>
|
|
<configuration>
|
|
<arguments>run build</arguments>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
<!-- Copy automatically-generated set of NPM module dependencies for
|
|
later use by LICENSE generator -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-resources-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>copy-npm-dependency-list</id>
|
|
<phase>generate-resources</phase>
|
|
<goals>
|
|
<goal>copy-resources</goal>
|
|
</goals>
|
|
<configuration>
|
|
<outputDirectory>${dependency.list.directory}</outputDirectory>
|
|
<resources>
|
|
<resource>
|
|
<directory>src/main/frontend/dist</directory>
|
|
<includes>
|
|
<include>npm-dependencies.txt</include>
|
|
</includes>
|
|
</resource>
|
|
</resources>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
<!-- Automatically generate LICENSE and NOTICE -->
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>exec-maven-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>generate-license-files</id>
|
|
<phase>generate-resources</phase>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-war-plugin</artifactId>
|
|
<version>3.3.1</version>
|
|
<configuration>
|
|
|
|
<webResources>
|
|
|
|
<!-- Add frontend folder to war package ... -->
|
|
<resource>
|
|
<directory>src/main/frontend/dist</directory>
|
|
<excludes>
|
|
<exclude>translations/*.json</exclude>
|
|
<exclude>index.html</exclude>
|
|
<exclude>verifyCachedVersion.js</exclude>
|
|
</excludes>
|
|
</resource>
|
|
|
|
<!-- ... but filter index.html and translation strings -->
|
|
<resource>
|
|
<directory>src/main/frontend/dist</directory>
|
|
<filtering>true</filtering>
|
|
<includes>
|
|
<include>translations/*.json</include>
|
|
<include>index.html</include>
|
|
<include>verifyCachedVersion.js</include>
|
|
</includes>
|
|
</resource>
|
|
|
|
<!-- Include all licenses within META-INF -->
|
|
<resource>
|
|
<directory>${project.build.directory}/licenses</directory>
|
|
<targetPath>META-INF</targetPath>
|
|
</resource>
|
|
|
|
</webResources>
|
|
|
|
<!-- Add files from guacamole-common-js -->
|
|
<overlays>
|
|
<overlay>
|
|
<groupId>org.apache.guacamole</groupId>
|
|
<artifactId>guacamole-common-js</artifactId>
|
|
<type>zip</type>
|
|
</overlay>
|
|
</overlays>
|
|
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>default-cli</id>
|
|
<phase>process-resources</phase>
|
|
<goals>
|
|
<goal>exploded</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
</plugins>
|
|
</build>
|
|
|
|
<dependencies>
|
|
|
|
<!-- Java servlet API -->
|
|
<dependency>
|
|
<groupId>javax.servlet</groupId>
|
|
<artifactId>servlet-api</artifactId>
|
|
<version>2.5</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
|
|
<!-- JSR 356 WebSocket API -->
|
|
<dependency>
|
|
<groupId>javax.websocket</groupId>
|
|
<artifactId>javax.websocket-api</artifactId>
|
|
<version>1.0</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
|
|
<!-- Logging -->
|
|
<dependency>
|
|
<groupId>org.slf4j</groupId>
|
|
<artifactId>slf4j-api</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.slf4j</groupId>
|
|
<artifactId>jul-to-slf4j</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>ch.qos.logback</groupId>
|
|
<artifactId>logback-classic</artifactId>
|
|
<exclusions>
|
|
|
|
<!-- Exclude optional dependency on JavaMail -->
|
|
<exclusion>
|
|
<groupId>com.sun.mail</groupId>
|
|
<artifactId>javax.mail</artifactId>
|
|
</exclusion>
|
|
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<!-- Guacamole Extension API -->
|
|
<dependency>
|
|
<groupId>org.apache.guacamole</groupId>
|
|
<artifactId>guacamole-ext</artifactId>
|
|
<version>1.6.0</version>
|
|
</dependency>
|
|
|
|
<!-- Guacamole JavaScript API -->
|
|
<dependency>
|
|
<groupId>org.apache.guacamole</groupId>
|
|
<artifactId>guacamole-common-js</artifactId>
|
|
<version>1.6.0</version>
|
|
<type>zip</type>
|
|
<scope>runtime</scope>
|
|
</dependency>
|
|
|
|
<!-- Jetty 8 servlet API (websocket) -->
|
|
<dependency>
|
|
<groupId>org.eclipse.jetty</groupId>
|
|
<artifactId>jetty-websocket</artifactId>
|
|
<version>8.1.1.v20120215</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
|
|
<!-- Jetty 9.0 servlet API (websocket) -->
|
|
<dependency>
|
|
<groupId>org.eclipse.jetty</groupId>
|
|
<artifactId>jetty-parent</artifactId>
|
|
<version>20</version>
|
|
<scope>provided</scope>
|
|
<type>pom</type>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.eclipse.jetty.websocket</groupId>
|
|
<artifactId>websocket-api</artifactId>
|
|
<version>9.0.7.v20131107</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.eclipse.jetty.websocket</groupId>
|
|
<artifactId>websocket-servlet</artifactId>
|
|
<version>9.0.7.v20131107</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
|
|
<!-- Tomcat servlet API (websocket) -->
|
|
<dependency>
|
|
<groupId>org.apache.tomcat</groupId>
|
|
<artifactId>tomcat-catalina</artifactId>
|
|
<version>7.0.37</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.tomcat</groupId>
|
|
<artifactId>tomcat-coyote</artifactId>
|
|
<version>7.0.37</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
|
|
<!-- Guice - Dependency Injection -->
|
|
<dependency>
|
|
<groupId>com.google.inject</groupId>
|
|
<artifactId>guice</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.google.inject.extensions</groupId>
|
|
<artifactId>guice-assistedinject</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.google.inject.extensions</groupId>
|
|
<artifactId>guice-servlet</artifactId>
|
|
</dependency>
|
|
|
|
<!-- Jersey - JAX-RS Implementation -->
|
|
<dependency>
|
|
<groupId>org.glassfish.jersey.containers</groupId>
|
|
<artifactId>jersey-container-servlet-core</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.glassfish.jersey.inject</groupId>
|
|
<artifactId>jersey-hk2</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.glassfish.hk2</groupId>
|
|
<artifactId>guice-bridge</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.glassfish.jersey.media</groupId>
|
|
<artifactId>jersey-media-json-jackson</artifactId>
|
|
<exclusions>
|
|
|
|
<!-- Resolve version conflict (see below - transitive
|
|
dependencies of jersey-media-json-jackson disagree on
|
|
1.2.1 vs. 1.2.2) -->
|
|
<exclusion>
|
|
<groupId>jakarta.activation</groupId>
|
|
<artifactId>jakarta.activation-api</artifactId>
|
|
</exclusion>
|
|
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<!-- JSR-250 annotations -->
|
|
<dependency>
|
|
<groupId>javax.annotation</groupId>
|
|
<artifactId>jsr250-api</artifactId>
|
|
<version>1.0</version>
|
|
</dependency>
|
|
|
|
<!-- Guava Base Libraries -->
|
|
<dependency>
|
|
<groupId>com.google.guava</groupId>
|
|
<artifactId>guava</artifactId>
|
|
</dependency>
|
|
|
|
<!-- Force use of version 1.2.2 (transitive dependencies of
|
|
jersey-media-json-jackson disagree on 1.2.1 vs. 1.2.2) -->
|
|
<dependency>
|
|
<groupId>jakarta.activation</groupId>
|
|
<artifactId>jakarta.activation-api</artifactId>
|
|
<version>1.2.2</version>
|
|
</dependency>
|
|
|
|
</dependencies>
|
|
|
|
</project>
|