Skip to content
Permalink
master
Switch branches/tags
Go to file
 
 
Cannot retrieve contributors at this time
<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<maven.install.skip>true</maven.install.skip>
<!-- <skipTests>true</skipTests>-->
</properties>
<groupId>me.grishka.smithereen</groupId>
<artifactId>server</artifactId>
<version>0.4.1</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<archive>
<manifest>
<mainClass>smithereen.SmithereenApplication</mainClass>
</manifest>
</archive>
<finalName>smithereen</finalName>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>smithereen.SmithereenApplication</mainClass>
</manifest>
</archive>
<finalName>smithereen</finalName>
</configuration>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.0.0-M4</version>
</plugin>
<!-- I don't care about this fancy repository stuff, I just want the jar copied to the server -->
<!-- Define deployHost property in your ~/.m2/settings.xml for this to work -->
<!-- See https://maven.apache.org/examples/injecting-properties-via-settings.html for details -->
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.7</version>
<executions>
<execution>
<id>default-deploy</id>
<phase>none</phase>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.6.0</version>
<executions>
<execution>
<id>upload-jar-with-dependencies</id>
<phase>deploy</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>scp</executable>
<arguments>
<argument>${basedir}/target/smithereen-jar-with-dependencies.jar</argument>
<argument>root@${deployHost}:/opt/smithereen/smithereen.jar</argument>
</arguments>
</configuration>
</execution>
<execution>
<id>restart-systemd-service</id>
<phase>deploy</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>ssh</executable>
<arguments>
<argument>root@${deployHost}</argument>
<argument>service smithereen restart</argument>
</arguments>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.github.eirslett</groupId>
<artifactId>frontend-maven-plugin</artifactId>
<!-- Use the latest released version:
https://repo1.maven.org/maven2/com/github/eirslett/frontend-maven-plugin/ -->
<version>1.12.0</version>
<configuration>
<nodeVersion>v16.13.1</nodeVersion>
<workingDirectory>src/main/web</workingDirectory>
<installDirectory>target</installDirectory>
</configuration>
<executions>
<execution>
<!-- optional: you don't really need execution ids, but it looks nice in your build log. -->
<id>install node and npm</id>
<goals>
<goal>install-node-and-npm</goal>
</goals>
</execution>
<execution>
<id>npm install</id>
<goals>
<goal>npm</goal>
</goals>
<configuration>
<arguments>install --no-audit --no-fund</arguments>
</configuration>
</execution>
<execution>
<id>postcss: desktop</id>
<goals>
<goal>npx</goal>
</goals>
<phase>generate-resources</phase>
<configuration>
<arguments>postcss desktop.scss -o ${basedir}/target/generated-resources/public/res/desktop.css</arguments>
</configuration>
</execution>
<execution>
<id>postcss: mobile</id>
<goals>
<goal>npx</goal>
</goals>
<phase>generate-resources</phase>
<configuration>
<arguments>postcss mobile.scss -o ${basedir}/target/generated-resources/public/res/mobile.css</arguments>
</configuration>
</execution>
<execution>
<id>compile typescript</id>
<goals>
<goal>npx</goal>
</goals>
<phase>generate-resources</phase>
<configuration>
<arguments>tsc -p common_ts --outFile ${basedir}/target/typescript/common.js</arguments>
</configuration>
</execution>
<execution>
<id>minify js</id>
<goals>
<goal>npx</goal>
</goals>
<phase>generate-resources</phase>
<configuration>
<arguments>uglify-js --compress --mangle --source-map content='${basedir}/target/typescript/common.js.map',url='common.js.map',root='common_ts' -o ${basedir}/target/generated-resources/public/res/common.js ${basedir}/target/typescript/common.js</arguments>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>me.ccampo</groupId>
<artifactId>git-version-maven-plugin</artifactId>
<version>0.1.0</version> <!-- Use the latest stable version if possible -->
<extensions>true</extensions>
<configuration>
<strategy hint="git">
<!-- Strategy specific configuration goes here -->
<nonQualifierBranches>master</nonQualifierBranches>
<preReleaseStage>dev</preReleaseStage>
<dirtyQualifier>dirty</dirtyQualifier>
<snapshot>false</snapshot>
</strategy>
<deleteTemporaryFile>true</deleteTemporaryFile>
</configuration>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<includes>
<include>version.properties</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<excludes>
<exclude>version.properties</exclude>
</excludes>
</resource>
<resource>
<directory>target/generated-resources</directory>
</resource>
<!-- copy typescript sources into /public so they're available from browser devtools -->
<resource>
<directory>src/main/web</directory>
<targetPath>public/res</targetPath>
<includes>
<include>common_ts/*.ts</include>
</includes>
</resource>
</resources>
</build>
<dependencies>
<dependency>
<groupId>com.sparkjava</groupId>
<artifactId>spark-core</artifactId>
<version>2.9.3</version>
</dependency>
<dependency>
<groupId>io.pebbletemplates</groupId>
<artifactId>pebble</artifactId>
<version>3.1.5</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<!-- TODO remove all uses of resultSet.first() and upgrade this -->
<version>8.0.18</version>
</dependency>
<dependency>
<groupId>org.jetbrains</groupId>
<artifactId>annotations</artifactId>
<version>23.0.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<!-- jsoup HTML parser library @ https://jsoup.org/ -->
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.14.3</version>
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>3.14.9</version>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<version>5.8.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.7.36</version>
</dependency>
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.5.0-b01</version>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.9.0</version>
</dependency>
<dependency>
<groupId>cz.jirutka.unidecode</groupId>
<artifactId>unidecode</artifactId>
<version>1.0.1</version>
</dependency>
<dependency>
<groupId>net.java.dev.jna</groupId>
<artifactId>jna</artifactId>
<version>5.11.0</version>
</dependency>
</dependencies>
</project>