I have built a package that has a post install script. Now trying to install it into a professional edition, it doesn't install because of no apex permission in the org.

Now, I cannot delete the apex class from my packaging org even though managed package component deletion is enabled (because the post install class is a global class). So, the only thing I can do is deprecate the class. So that it can be installed in the professional edition without showing up in the 'code secition' But when I deprecate the class, and try to upload it, it asks for a test class. So I include the test class, that covers the deprecated class, so the upload succeeds. but now when I try to install in the professional edition, the same error shows up saying apex not enabled, because test class is counting as an apex class, is there a way to deprecate the test class as well but successfully upload the package?

update : I was able to deprecate both a post install class and its test class, and then try the installation. That does not work either. Even though it doesn't show up in the code components section when installing the package, it results in the same error of missing feature: apex class. so no point deprecating.


1 Answer 1


Once your managed package passes the security review, you will be able to install it in a Professional Edition org, even though it doesn't have the Apex Class permission. This is one of the benefits of registering as an ISV, creating a package, and having it reviewed.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .