After installing the latest SDK (2.11.0) and the latest version of GenericKnimeNodes I got the following error message, when I tried to run GenericKnimNodes with the following batch script under 64 Bit Windows (Java 7u71):
@echo on
set OUT_DIR="C:\Users\mayerg97\Documents\NetBeansProjects\ProCon\"
set GKN_DIR="C:\Programs\GenericKnimeNodes"
cd %GKN_DIR%
set PROG_FILES="C:\Program Files"
ant -Dknime.sdk=%PROG_FILES%\KNIME_SDK_2.11.0 -Dplugin.dir=C:\Users\mayerg97\Documents\NetBeansProjects\ProCon\KNIME\ > %OUT_DIR%KNIME_GKN_out.log
pause
The produced output looks like this:
...
custom.plugin.generate_sources:
[echo] C:\Programs\GenericKnimeNodes\build\com.genericworkflownodes.knime.config_0.8.0.jar;C:\Programs\GenericKnimeNodes\com.genericworkflownodes.knime.node_generator\lib\commons-io-2.4.jar;C:\Programs\GenericKnimeNodes\com.genericworkflownodes.knime.node_generator\lib\commons-lang-2.6.jar;C:\Programs\GenericKnimeNodes\com.genericworkflownodes.knime.node_generator\lib\dom4j-1.6.1.jar;C:\Programs\GenericKnimeNodes\com.genericworkflownodes.knime.node_generator\lib\jaxen-1.1-beta-6.jar;C:\Programs\GenericKnimeNodes\build\com.genericworkflownodes.knime.node_generator_0.8.0.jar
[java] Unknown Parameter ProCon.h
[java] Error while reading file: C:\Users\mayerg97\Documents\NetBeansProjects\ProCon\KNIME\descriptors\ProCon_PD1x.ctd
[java] Invalid ctd-format: ProCon_PD1x.ctd
[java] Reason: null
...
[java] com.genericworkflownodes.knime.nodegeneration.NodeGenerator$NodeGeneratorException: java.security.InvalidParameterException: No path within the node repository was specified
[java] at com.genericworkflownodes.knime.nodegeneration.NodeGenerator.<init>(NodeGenerator.java:156)
[java] at com.genericworkflownodes.knime.nodegeneration.Main.main(Main.java:71)
[java] Caused by: java.security.InvalidParameterException: No path within the node repository was specified
[java] at com.genericworkflownodes.knime.nodegeneration.model.meta.GeneratedPluginMeta.<init>(GeneratedPluginMeta.java:202)
[java] at com.genericworkflownodes.knime.nodegeneration.NodeGenerator.<init>(NodeGenerator.java:147)
[java] ... 1 more
BUILD SUCCESSFUL
Total time: 5 seconds
If one looks into the generated_plugin directory of GenericKnimeNode then only an epmty folder de.mpc.ProCon was created, but no plugin. I don't know why the scripts says "BUILD SUCCESSFUL".
I also don't know what by the "InvalidParameterException: No path within the node repository was specified" is meant.
What is very strange is that the script expects an "Unknown Parameter ProCon.h", because I thought KNIME is a Java program (ProCon is too a Java program). Therefore I don't know what GenericKnimeNodes expects in the header ProCon.h?
The message "Invalid ctd-format: ProCon_PD1x.ctd" is due to the fact, that the .ctd file is not validating against the XML schema xsi:noNamespaceSchemaLocation="http://open-ms.sourceforge.net//schemas//CTD_0_3.xsd
But this in my opinion is due to the fact that the schemas CTD_0_3.xsd and Param_1_6_2.xsd are not valid. For instance the version attribute in the XML element <PARAMETERS version="1_6_2"> is defined in the schema as float ("1.62") instead as string ("1_6_2").
The .ctd file looks as follows:
<PARAMETERS version="1.62">
<NODE name="ProCon_PD1x" description="ProCon ProteomeDiscoverer 1.x converter">
<ITEM value="PD1x" required="true" advanced="false" name="ProCon.conv" type="string" description="name of the converter program (PD1x, PS13, PS21, SEQO)" restrictions="PD1x,PS13,PS21,SEQO"/>
<ITEM value="Consensus" required="true" advanced="false" name="ProCon.PD1x.pks" type="string" description="pK value set for isoelectric Point (IP) calculation (e.g. Consensus)" restrictions="Consensus,CRC Handbook,DTASelect,EMBOSS,Grimsley,Lehninger,Patrickios,Rodwell,Sillero,Solomon,Wikipedia"/>
...
description="mzIdentML .mzid file" supported_formats="*.mzid"/>
<ITEM value="" required="true" advanced="false" name="ProCon.PD1x.sampname" type="string" description="sample name"/>
</NODE>
</PARAMETERS>
After schema validation with Altova XMLSpy against Param_1_6_2.xsd one gets the message: "Further elements required under element <NODE>"