I've been trying to get this stash tutorial wokring: https://developer.atlassian.com/stash/docs/latest/tutorials-and-examples/controlling-when-pull-requests-can-be-merged.html
However, I am getting the following maven errors:
Description Resource Path Location Type
Project build error: 'dependencies.dependency.version' for com.atlassian.stash:stash-api:jar is missing. pom.xml /is-admin-merge-check line 1 Maven Problem
Project build error: 'dependencies.dependency.version' for com.atlassian.stash:stash-page-objects:jar is missing. pom.xml /is-admin-merge-check line 1 Maven Problem
Project build error: 'dependencies.dependency.version' for com.atlassian.stash:stash-spi:jar is missing. pom.xml /is-admin-merge-check line 1 Maven Problem
Project build error: Non-resolvable import POM: Failure to find com.atlassian.stash:stash-parent:pom:2.2.0 in http://repo1.maven.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced pom.xml /is-admin-merge-check line 1 Maven Problem
The POM file looks like this:
<?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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany</groupId>
<artifactId>is-admin-merge-check</artifactId>
<version>1.0-SNAPSHOT</version>
<organization>
<name>Example Company</name>
<url>http://www.example.com/</url>
</organization>
<name>is-admin-merge-check</name>
<description>This is the com.mycompany:is-admin-merge-check plugin for Atlassian Stash.</description>
<packaging>atlassian-plugin</packaging>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.atlassian.stash</groupId>
<artifactId>stash-parent</artifactId>
<version>${stash.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>com.atlassian.stash</groupId>
<artifactId>stash-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.atlassian.stash</groupId>
<artifactId>stash-spi</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.atlassian.stash</groupId>
<artifactId>stash-page-objects</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.6</version>
</dependency>
<!-- WIRED TEST RUNNER DEPENDENCIES -->
<dependency>
<groupId>com.atlassian.plugins</groupId>
<artifactId>atlassian-plugins-osgi-testrunner</artifactId>
<version>${plugin.testrunner.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>jsr311-api</artifactId>
<version>1.1.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.2.2-atlassian-1</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>com.atlassian.maven.plugins</groupId>
<artifactId>maven-stash-plugin</artifactId>
<version>${amps.version}</version>
<extensions>true</extensions>
<configuration>
<products>
<product>
<id>stash</id>
<instanceId>stash</instanceId>
<version>${stash.version}</version>
<dataVersion>${stash.data.version}</dataVersion>
</product>
</products>
</configuration>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</build>
<properties>
<stash.version>2.2.0</stash.version>
<stash.data.version>2.2.0</stash.data.version>
<amps.version>4.1.6</amps.version>
<plugin.testrunner.version>1.1.1</plugin.testrunner.version>
</properties>
</project>
This POM file was generated by the atlas-create-stash-plugin SDK command, as specified in the tutorial.
I thought i would try removing the dependencyManagement section and putting the <version>${stash.version}</version> on each dependency that needed it, but I get the following errors:
Description Resource Path Location Type
Missing artifact com.atlassian.stash:stash-api:jar:2.2.0:provided pom.xml /is-admin-merge-check line 1 Maven Problem
Missing artifact com.atlassian.stash:stash-page-objects:jar:2.2.0:provided pom.xml /is-admin-merge-check line 1 Maven Problem
Missing artifact com.atlassian.stash:stash-spi:jar:2.2.0:provided pom.xml /is-admin-merge-check line 1 Maven Problem
Does anyone know what might be wrong here?
Edit
The original failure (before I removed the servlet-api dependency) was this:
[ERROR] The project com.mycompany:is-admin-merge-check:1.0-SNAPSHOT (/Users/me/repos/stash-example-plugin/is-admin-merge-check/pom.xml) has 5 errors
[ERROR] Non-resolvable import POM: Failure to find com.atlassian.stash:stash-parent:pom:2.2.0 in http://repo1.maven.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced @ line 23, column 25 -> [Help 2]
[ERROR] 'dependencies.dependency.version' for com.atlassian.stash:stash-api:jar is missing. @ line 34, column 21
[ERROR] 'dependencies.dependency.version' for com.atlassian.stash:stash-spi:jar is missing. @ line 39, column 21
[ERROR] 'dependencies.dependency.version' for com.atlassian.stash:stash-page-objects:jar is missing. @ line 44, column 21
[ERROR] 'dependencies.dependency.version' for javax.servlet:servlet-api:jar is missing. @ line 49, column 21