HTML

JIRA DEV

Az Atlassian termékek felhasználási területei, paraméterezésük és alkalmazásfejlesztési lehetőségeik. Esettanulmány és érdekességek a JIRA-ról, Confluence-ről, GreenHopper-ről és a hozzájuk kapcsolódó plugin fejlesztésről, egy kevés Scrum módszertannal fűszerezve.

Kérdéseket és észrevételeidet a lacimol kukatc gmail pont com címre tudod elküldeni.

Üdv:
lacimol ()

Legutóbbi bejegyzések

Nincs megjeleníthető elem

Címkék

JiraDevTutor

Nincs megjeleníthető elem

Friss topikok

18.
április

Jira plugin fejlesztés 2.

A Maven és a pom.xml |  lacimol

A pom.xml felépítése

Ha az Atlassian Plugin SDK-val generálunk egy projektet, akkor a parancssorban megadott adatok alapján feltölti a pom.xml-t is adatokkal. A pom.xml felépítését az Atlassian dokumentáció leírja, de a főbb elemeket itt is kiemelem.

<?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>hu.lacimol.tutorial</groupid>
	<artifactid>jiradevtutor</artifactid>
	<version>1.0-SNAPSHOT</version>
	<organization>
		<name>Molnár László</name>
		<url>http://jiradev.blog.hu</url>
	</organization>
	<name>JiraDevTutor</name>
	<description>This is the hu.lacimol.tutorial:helloworld plugin for Atlassian JIRA.</description>
	<packaging>atlassian-plugin</packaging>
	<!-- további elemek, pl: dependencies, build -->
	<properties>
    	<jira.version>5.1.8</jira.version>
    	<amps.version>4.1.6</amps.version>
    	<plugin.testrunner.version>1.1.1</plugin.testrunner.version>
    </properties>
</project>

A fent kiemelt részek így fognak megjelenni az admin oldalon a Plugin-ek alatt:

plugin_installed_mod.png

Maven beállítások

A telepített SDK tartalmazza a Maven-t is (2.1.0), de ha más verziót használnánk, akkor a lenti konfigurációs beállításokat át kell vezetnünk. A Maven a függőségek kezelését a [MAVEN_HOME]/conf/settings.xml-ben lévő adatok alapján végzi, az ott megadott szerverekről tölti le a helyi reporsitory-ba.

settings.xml

<plugingroups>
     <plugingroup>com.atlassian.maven.plugins</plugingroup>
</plugingroups>
<!-- további elemek -->
<!-- Default profile containing Atlassian servers -->
<profile>
	<id>defaultProfile</id>
	<activation>
		<activebydefault>true</activebydefault>
	</activation>

	<repositories>
		<repository>
			<id>atlassian-public</id>
			<url>https://m2proxy.atlassian.com/repository/public</url>
			<snapshots>
				<enabled>true</enabled>
				<updatepolicy>never</updatepolicy>
				<checksumpolicy>warn</checksumpolicy>
			</snapshots>
			<releases>
				<enabled>true</enabled>
				<checksumpolicy>warn</checksumpolicy>
			</releases>
		</repository>
		<repository>
			<id>atlassian-plugin-sdk</id>
			<url>file://${env.ATLAS_HOME}/repository</url>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
			<releases>
				<enabled>true</enabled>
				<checksumpolicy>warn</checksumpolicy>
			</releases>
		</repository>
	</repositories>

	<pluginrepositories>
		<pluginrepository>
			<id>atlassian-public</id>
			<url>https://m2proxy.atlassian.com/repository/public</url>
			<releases>
				<enabled>true</enabled>
				<checksumpolicy>warn</checksumpolicy>
			</releases>
			<snapshots>
				<updatepolicy>never</updatepolicy>
				<checksumpolicy>warn</checksumpolicy>
			</snapshots>
		</pluginrepository>
		<pluginrepository>
			<id>atlassian-plugin-sdk</id>
			<url>file://${env.ATLAS_HOME}/repository</url>
			<releases>
				<enabled>true</enabled>
				<checksumpolicy>warn</checksumpolicy>
			</releases>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
		</pluginrepository>
	</pluginrepositories>
	<properties>
		<downloadsources>true</downloadsources>
		<downloadjavadocs>true</downloadjavadocs>
	</properties>
</profile>  

Maven projekt az Eclipse-ben

Az Atlassian HelloWorld projekt a leírás alapján Java projektként kerül be az Eclipse-be, de néhány apró módosítással Maven projekté alakíthatjuk. Az átalakítás után egyszerűbb lesz a frissítés, a kommitálás és a szerverindítás. A HelloWorld projektet átalakíthatjuk a Jobb klikk --- Configure --- "Convert to Maven project" kiválasztásával vagy eleve Maven projektként importáljuk. Az így módosított projekt hibát fog jelezni (Plugin execution not covered by lifecycle configuration), amit a lenti pom.xml módosítással orvosolhatunk.

<?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>hu.lacimol.tutorial</groupid>
	<artifactid>jiradevtutor</artifactid>
	<version>1.0-SNAPSHOT</version>
	<organization>
		<name>Molnár László</name>
		<url>http://jiradev.blog.hu</url>
	</organization>
	<name>JiraDevTutor</name>
	<description>This is the hu.lacimol.tutorial:helloworld plugin for Atlassian JIRA.</description>
	<packaging>atlassian-plugin</packaging>
	<!-- További elemek: dependencies -->
	<build>
		<!-- További elemek: plugins -->
		<pluginmanagement>
			<plugins>
				<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself. -->
				<plugin>
					<groupid>org.eclipse.m2e</groupid>
					<artifactid>lifecycle-mapping</artifactid>
					<version>1.0.0</version>
					<configuration>
						<lifecyclemappingmetadata>
							<pluginexecutions>
								<pluginexecution>
									<pluginexecutionfilter>
										<groupid>com.atlassian.maven.plugins</groupid>
										<artifactid>maven-jira-plugin</artifactid>
										<versionrange>[4.1.6,)</versionrange>
										<goals>
											<goal>filter-plugin-descriptor</goal>
											<goal>filter-test-plugin-descriptor</goal>
											<goal>copy-bundled-dependencies</goal>
											<goal>copy-test-bundled-dependencies</goal>
											<goal>compress-resources</goal>
											<goal>generate-manifest</goal>
											<goal>generate-test-manifest</goal>
											<goal>generate-rest-docs</goal>
										</goals>
									</pluginexecutionfilter>
									<action>
										<ignore></ignore>
									</action>
								</pluginexecution>
							</pluginexecutions>
						</lifecyclemappingmetadata>
					</configuration>
				</plugin>
			</plugins>
		</pluginmanagement>
	</build>
	<!-- További elemek: properties -->
</project>

A módosítás után már nem jelez hibát a fordító. Ezután hozzunk létre a "Run Configurations" menü alatt egy indító parancsot. Itt a Maven fül alatt állítsuk be a "com.atlassian.maven.plugins:maven-amps-dispatcher-plugin:4.1.6:run" parancsot a Goals résznél, majd növeljük a JRE fül alatt a Maven fordításhoz szükséges memóriát: -Xmx768M -XX:MaxPermSize=256M. Ezután a lenti konfigurációval kiválthatjuk a parancssorból futtatható "atlas-run"-t.

eclipse_run_conf.png

A fenti módosítások letölthetők SVN-en keresztül és becsomagolva a blog GoogleCode oldaláról a JiraDevTutor projektből. A fenti kód fordításához telepíteni kell az SDK-t és be kell állítani az abban telepített Maven-t az Eclipse-ben (Run Configurations --- Maven Build --- Maven runtime).

Címkék: plugin programozás maven

komment

süti beállítások módosítása