Extension building error

Hi,

I am beginner on extensions and trying to compile an existing extension that I found on the forum. I am getting very basic error and was seeking for anyone to provide me with some guidance. The code that I have is doing

import com.percussion.extension.IPSExtensionDef;
import com.percussion.extension.IPSItemValidator;
import com.percussion.extension.PSExtensionException;

and I have set my classpath to point to C:\Rhythmyx\AppServer\server\rx\deploy\rxapp.ear\rxapp.war\WEB-INF\lib

But, when I compile, I get following error…

“C:\Program Files\Java\jdk1.5.0_22\bin\javac” -classpath “C:\Rhythmyx\AppServer\server\rx\deploy\rxapp.ear\rxapp.war\WEB-INF\lib:.” PSValidateStringPattern.java

PSValidateStringPattern.java:7: package com.percussion.extension does not exist
import com.percussion.extension.IPSExtensionDef;
^
PSValidateStringPattern.java:8: package com.percussion.extension does not exist
import com.percussion.extension.IPSItemValidator;
^
PSValidateStringPattern.java:9: package com.percussion.extension does not exist
import com.percussion.extension.PSExtensionException;
^
PSValidateStringPattern.java:10: package com.percussion.extension does not exist

import com.percussion.extension.PSExtensionProcessingException;

all the jar files have to be added to the classpath, not just the lib directory.

Do we have a list of jar files that should be added in the classpath for the extension building? There are 168 jar files in that directory.

Personally, I use a script to add all of them, or I use an IDE that’ll add them for me, but…

The major ones, just to compile your code will probably just be the ones that start with “rx”…

rhythmyx.jar, rxserver.jar, rxclient.jar, rxservices.jar, rxextensions.jar… etc.

I tend to be a minimalist and only include jars that are actually needed. You should never need rhythmyx.jar (non-public workbench code) or rxserver.jar (non-public server code), rxextensions.jar would only be needed if you were extending an existing extension. For your purpose, rxclient.jar is what you need. There are tools that can help you find which jar a class is in if you prefer this approach over the brute force approach.

Thanks for all the information. I was able to use Eclipse and compile/deploy successfully.