On Tue, Jan 11, 2011 at 06:19, Jane Ren <[email protected]> wrote: > But in my directory, I have only a couple of pom.xmls, so how do I get the > xml that I need to add to pluginlist.xml? It doesn't seem like I have any > xml files I can the path to pluginlist.xml. Any ideas?
This bit is unfortunately not yet covered by our tutorial. We've got a Maven plugin that can help you generate the plugin file. See http://www.mygrid.org.uk/dev/wiki/display/developer/Maven+plugin+for+managing+Taverna+plugins Alternatively, look at http://www.mygrid.org.uk/taverna/updates/2.2.0/plugins/prototype/ for some inspiration based on the prototype plugins. The most important things to get right based on this example: <?xml version="1.0" encoding="UTF-8" standalone="no"?> <plugins:plugin xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://taverna.sf.net/2008/xml/plugins http://taverna.sourceforge.net/2008/xml/plugins/plugins-2008-10-16.xsd" xmlns:plugins="http://taverna.sf.net/2008/xml/plugins"> <provider>taverna.org.uk</provider> <identifier>net.sf.taverna.t2.ui-activities.rest</identifier> <version>0.3.1</version> <!-- Does not match the workbench version, this --> <!-- is the plugin version --> <name>REST Activity Plugin</name> <description>Generic REST Activity that can handle all HTTP methods</description> <enabled>true</enabled> <repositories> <!-- myGrid repositories and mirrors --> <repository>http://www.mygrid.org.uk/maven/repository/</repository> <repository>http://bioinf.ncl.ac.uk/mirror/maven/repository/</repository> <repository>http://mirror.omii.ac.uk/maven/repository/</repository> <repository>http://www.mygrid.org.uk/maven/snapshot-repository/</repository> <!-- Mirror of official maven repository --> <repository>http://www.mygrid.org.uk/maven/repo1/</repository> <repository>http://ibiblio.lsu.edu/main/pub/packages/maven2/</repository> <repository>http://www.eviware.com/repository/maven2/</repository> </repositories> <profile> <artifact groupId="net.sf.taverna.t2.ui-activities" artifactId="rest-activity" version="0.3.1" /> <artifact groupId="net.sf.taverna.t2.ui-activities" artifactId="rest-activity-ui" version="0.3.1" /> </profile> <compatibility> <application> <version>2.2.0</version> </application> </compatibility> </plugins:plugin> under <repositories> make sure your new repository (where Maven has deployed the artifacts) is listed. <provider> is informational only, and mainly used to identify the plugin site - so if you deploy to maven.jane.org - use <provider>maven.jane.org</provider> <identifier> identifies this particular plugin, so that it can be matched for upgrades. Generally this should match the groupID and artifactID, which should match your Java package name. For instance: <identifier>org.jane.taverna.pdfviewer</identifier> <version> is the version of this plugin DEFINITION - a new version here (when ASCII-compared) means that it will be offered as an upgrade to the user. Any new versions of artifacts under <profile> will be downloaded as well. under <profile> you need to include the head Maven artifacts you want Taverna to load. For activities this typically will only be the "x-activity" and the "x-activity-ui". You can either use the short-hand format as above, or you can use a standard <dependency> block as in pom.xml: <profile> <dependency> <groupId>net.sf.taverna.t2.activities</groupId> <artifactId>sadi-activity</artifactId> <version>0.3.0</version> </dependency> <dependency> <groupId>net.sf.taverna.t2.ui-activities</groupId> <artifactId>sadi-activity-ui</artifactId> <version>0.3.0</version> </dependency> </profile> (note that properties are not allowed, and all three of <groupId>, <artifactId> and <version> must be present). You don't need to add the individual dependencies that x-activity needs, etc, as Taverna will pick up these by following the POMs recursively. Typically the <version> of the artifacts your plugin pulls in are matching the plugin version. Note that if you are doing a new release it's essential for your Maven artifacts to have a new version number - if Taverna has already downloaded blah-activity version 0.1, it's not going to download that JAR and POM file again even if you have updated the plugin definition version. If it's only you testing, you can work around this by simply deleting the 'repository' folder from Taverna's home directory. (Click Advanced -> View log folder and go one up to find this folder) For a plugin update, you'll need to redeploy in new versions the affected Maven artifacts (and any artifacts which depend on those), and then add a new plugin definition file with a new version number both on the artifacts and for itself, and add this to the pluginlist.xml. When Taverna checks for updates it will pick up your new plugin definition and offer it as an upgrade to users who had the old version installed. You can leave the old version in pluginlist.xml as the Plugin manager will only offer to install the latest version. -- Stian Soiland-Reyes, myGrid team School of Computer Science The University of Manchester ------------------------------------------------------------------------------ Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl _______________________________________________ taverna-hackers mailing list [email protected] Web site: http://www.taverna.org.uk Mailing lists: http://www.taverna.org.uk/about/contact-us/ Developers Guide: http://www.taverna.org.uk/developers/
