Hi all,
i'm trying to integrate pmd in our build with ant but get the following rror:
[flexPmd] net.sourceforge.pmd.RuleSetNotFoundException: Can't find resource com/adobe/ac/pmd/rulesets/architecture.xml. Make sure the resource is a valid file or URL or is on the CLASSPATH
[flexPmd] at net.sourceforge.pmd.util.ResourceLoader.loadResourceAsStream(ResourceLoader.java:28)
[flexPmd] at net.sourceforge.pmd.RuleSetFactory.parseRuleSetReferenceNode(RuleSetFactory.java:284)
[flexPmd] at net.sourceforge.pmd.RuleSetFactory.parseRuleNode(RuleSetFactory.java:251)
[flexPmd] at net.sourceforge.pmd.RuleSetFactory.parseRuleSetNode(RuleSetFactory.java:209)
[flexPmd] at net.sourceforge.pmd.RuleSetFactory.createRuleSet(RuleSetFactory.java:157)
[flexPmd] at net.sourceforge.pmd.RuleSetFactory.createRuleSet(RuleSetFactory.java:146)
[flexPmd] at com.adobe.ac.pmd.engines.AbstractFlexPmdEngine.loadRuleset(AbstractFlexPmdEngine.java:184)
[flexPmd] at com.adobe.ac.pmd.engines.AbstractFlexPmdEngine.<init>(AbstractFlexPmdEngine.java:100)
I set it up like on the doc page and if i echo the task with filled in paths i get the right ones:
Buildfile: build.xml
[echo]
[echo]
[echo] <taskdef name="flexPmd"
[echo] classname="com.adobe.ac.pmd.ant.FlexPmdAntTask"
[echo] classpath="/Users/arnoudbos/Desktop/AgileFlex2/_build/taskdef-lib/flexpmd/1.0/flex-pmd-ant-task-1.0.jar">
[echo] <classpath>
[echo] <pathelement location="/Users/arnoudbos/Desktop/AgileFlex2/_build/taskdef-lib/flexpmd/1.0/as3-parser-1.0.jar"/>
[echo] <pathelement location="/Users/arnoudbos/Desktop/AgileFlex2/_build/taskdef-lib/flexpmd/1.0/as3-parser-api-1.0.jar"/>
[echo] <pathelement location="/Users/arnoudbos/Desktop/AgileFlex2/_build/taskdef-lib/flexpmd/1.0/as3-plugin-utils-1.0.jar"/>
[echo] <pathelement location="/Users/arnoudbos/Desktop/AgileFlex2/_build/taskdef-lib/flexpmd/1.0/commons-lang-2.4.jar"/>
[echo] <pathelement location="/Users/arnoudbos/Desktop/AgileFlex2/_build/taskdef-lib/flexpmd/1.0/flex-pmd-core-1.0.jar"/>
[echo] <pathelement location="/Users/arnoudbos/Desktop/AgileFlex2/_build/taskdef-lib/flexpmd/1.0/flex-pmd-files-1.0.jar"/>
[echo] <pathelement location="/Users/arnoudbos/Desktop/AgileFlex2/_build/taskdef-lib/flexpmd/1.0/flex-pmd-ruleset-1.0.jar"/>
[echo] <pathelement location="/Users/arnoudbos/Desktop/AgileFlex2/_build/taskdef-lib/flexpmd/1.0/flex-pmd-ruleset-api-1.0.jar"/>
[echo] <pathelement location="/Users/arnoudbos/Desktop/AgileFlex2/_build/taskdef-lib/flexpmd/1.0/plexus-utils-1.0.2.jar"/>
[echo] <pathelement location="/Users/arnoudbos/Desktop/AgileFlex2/_build/taskdef-lib/flexpmd/1.0/pmd-4.2.5.jar"/>
[echo] </classpath>
[echo] </taskdef>
[echo]
[echo]
i call the task without a ruleset so it should use the default one, right?
<flexPmd sourceDirectory="${src.flex.dir}" outputDirectory="${build.pmd.dir}" />
any thoughts? No one but me seems to have trouble to get the thing to work ....
i use the latest version 1.0 from the adobe opensource site
any help would be highly appreciated!
Arnoud