Creating a new plugin

If you create a new plugin, regardless if you use KNIME's new node wizard or if you do it from scratch, pay attention to the following points:

  1. If your plugin contributes nodes to KNIME (which in almost all cases it does), make sure you add a buckminster.cspex into the root folder of your plugin that has the following contents:
    <?xml version="1.0" encoding="UTF-8"?>
    <cspecExtension xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0" xmlns="http://www.eclipse.org/buckminster/CSpec-1.0">
    	<dependencies>
            <!-- needed so that the KNIME_Documentation_Builder application is available 
                 for the knime.create.helpfiles action. -->
            <dependency name="org.knime.workbench.help" componentType="osgi.bundle" />
        </dependencies>
        <actions>
    		<!-- Dynamically build the files for the Eclipse help. -->
    		<private name="knime.create.helpfiles" actor="knime.docBuilder">
    			<!-- Example how to selectively build help
    				<actorProperties>
    					<property key="pluginPattern" value="\Qorg.knime.base\E" />
    				</actorProperties>
    			-->
    			<prerequisites>
    				<attribute name="eclipse.build.source" />
    				<attribute name="manifest" />
    			</prerequisites>
    			<products alias="action.output" base="${buckminster.output}/knime.helpfiles/"
    				upToDatePolicy="ACTOR" />
    		</private>
    	</actions>
        <groups>
            <public name="knime.source">
                <attribute name="eclipse.build.source" />
            </public>
        </groups>
    	<alterGroups>
    		<private name="jar.contents">
    			<attribute name="knime.create.helpfiles" />
    		</private>
    	</alterGroups>
    	<alterArtifacts>
    		<private name="bin.includes">
    			<!-- The plugin.xml is taken from the created help files because the TOC 
    				entries were dynamically added. -->
    			<removePath path="plugin.xml" />
    		</private>
    	</alterArtifacts>
    </cspecExtension>
    
  2. Copy the following files into the .settings folder of your new plug-in when you create a new open source plug-in
    • org.knime.core/.settings/org.eclipse.jdt.core.prefs
    • org.knime.core/.settings/org.eclipse.jdt.ui.prefs
  3. Copy the following files into the .settings folder of your new plug-in when you create a new open source plug-in
    • com.knime.enterprise.server.core/.settings/org.eclipse.jdt.core.prefs
    • com.knime.enterprise.server.core/.settings/org.eclipse.jdt.ui.prefs
  4. Add an entry to org.knime.build.config/versions.txt for the new plug-in (find the correct block and insert it in alphabetical order)
LinkedInTwitterShare