Copy link to clipboard
Copied
Copy link to clipboard
Copied
Hi Xavier,
Thanks for the news!
I downloaded the new RC5 and tried to suppress specific FlexPMD violation however this feature still doesn't work.
It always suppresses all violations on this particular line regardless what I put as violation rule - // NO PMD <ViolationRule>.
Please see ticket FLEXPMD-88.
I tried to reopen the ticket (since it says the problem was fixed in RC5) however I could not change its status.
Am I missing something? Can I suppress a specific violation on specific line without suppressing all PMD violations with the new release?
What exactly should I put as <ViolationRule>?
Some examples...
paragraph.addChild(new BreakElement()); // NO PMD AlertShow
paragraph.addChild(new BreakElement()); // NO PMD AlertShowRule
paragraph.addChild(new BreakElement()); // NO PMD com.adobe.ac.pmd.rules.maintanability.AlertShow
paragraph.addChild(new BreakElement()); // NO PMD com.adobe.ac.pmd.rules.maintanability.AlertShowRule
Thanks
Copy link to clipboard
Copied
Hi,
I am surprised... That should be fixed and covered by unit-tests...
I will investigate.
Thanks
Xavier
Copy link to clipboard
Copied
I have copied all pmd files tp my cpd folders in order to be sure and I still have the same issue.
Thanks for helping me
Copy link to clipboard
Copied
Is it exactly the same error?
Can you paste the entire log, please?
Xavier
Copy link to clipboard
Copied
My entire log when I launch the cpd ant task :
Buildfile: D:\Docs\workspace\PETOR\Discovery\build.xml
cpd:
[cpd] Starting run, minimumTokenCount is 50
[cpd] Tokenizing files
BUILD FAILED
D:\Docs\workspace\PETOR\rnd\Discovery\build.xml:260: java.lang.NoClassDefFoundError: com/adobe/ac/pmd/parser/KeyWords
Total time: 640 milliseconds
Copy link to clipboard
Copied
I did not see you were running from Ant.
So you need to add the as3-parser-api jar in your class path.
<taskdef name="cpd" classname="com.adobe.ac.cpd.ant.FlexCpdAntTask"
classpath="${flexpmd.libs}/flex-pmd-cpd-ant-task-${flexpmd.version}.jar">
<classpath>
<pathelement location="${flexpmd.libs}/flex-pmd-files-${flexpmd.version}.jar" />
<pathelement location="${flexpmd.libs}/flex-pmd-cpd-${flexpmd.version}.jar" />
<pathelement location="${flexpmd.libs}/as3-plugin-utils-${flexpmd.version}.jar" />
<pathelement location="${flexpmd.libs}/as3-parser-${flexpmd.version}.jar" />
<pathelement location="${flexpmd.libs}/as3-parser-api${flexpmd.version}.jar" />
<pathelement location="${flexpmd.libs}/pmd-4.2.5.jar" />
</classpath>
</taskdef>
<target name="cpd">
<cpd minimumTokenCount="50" outputFile="${flexpmd.output}/cpd.xml">
<fileset dir="${src}">
<include name="**/*.as"/>
<include name="**/*.mxml"/>
</fileset>
</cpd>
</target>
Copy link to clipboard
Copied
It's already the case :
<taskdef name="cpd" classname="com.adobe.ac.cpd.ant.FlexCpdAntTask"
classpath="${flexpmd.libs}/flex-pmd-cpd-ant-task-${flexpmd.version}.jar">
<classpath>
<pathelement location="${flexpmd.libs}/flex-pmd-files-${flexpmd.version}.jar" />
<pathelement location="${flexpmd.libs}/flex-pmd-cpd-${flexpmd.version}.jar" />
<pathelement location="${flexpmd.libs}/as3-plugin-utils-${flexpmd.version}.jar" />
<pathelement location="${flexpmd.libs}/as3-parser-${flexpmd.version}.jar" />
<pathelement location="${flexpmd.libs}/as3-parser-api${flexpmd.version}.jar" />
<pathelement location="${flexpmd.libs}/pmd-4.2.5.jar" />
</classpath>
</taskdef>
<target name="cpd">
<cpd minimumTokenCount="50" outputFile="${flexpmd.output}/cpd.xml">
<fileset dir="${src.dir}">
<include name="**/*.as"/>
<include name="**/*.mxml"/>
</fileset>
</cpd>
</target>
Copy link to clipboard
Copied
Hi Xavier,
Sorry for introducing noise to the topic which was supposed to be related to the RC5 release only.
I will create another topic related to the "suppress specific rule" problem and provide more info there.
Thanks
Copy link to clipboard
Copied
I did a first test with PMD this morning and everything happedned ok but nont with CPD.
When I try to launch my ant task I have this error message :
cpd:
[cpd] Starting run, minimumTokenCount is 50
[cpd] Tokenizing files
BUILD FAILED
D:\Docs\workspace\PETOR\rnd\Discovery\build.xml:266: java.lang.NoClassDefFoundError: com/adobe/ac/pmd/parser/KeyWords
Any idea ?
Thanks
Copy link to clipboard
Copied
Hi,
Can you copy the As3-parser-api*.jar in the same folder as the installation of FlexCPD?
I usually unpackage flexPMD and FlexCPD in the same folder.
That helps dealing with ClassNotFoundException.
Copy link to clipboard
Copied
Hi Xavier,
First of all, thanks for your job!
Is there change in the way to use the Maven plugin?
The FlexPMD RC4 was a plugin in the reporting section. And it needed to be generated by a site goal.
What about the RC5, it seems that it is a plugin and that we don't need anymore to set up it with the site goal.
Is that true?
Sorry if it supposed to clear but I didn't found more information about that except on Adobe open Source page.
David
Copy link to clipboard
Copied
Glad you guys like the project
To make it clear, neither RC4 nor RC5 meeded to
be called from the report section. You could invoke it from the build section.
Xavier