Comments (4)
Hi Alfred!
It's impressive you've made it this far... π I'll do my best to answer some of your questions below:
Right now I'm just trying to get the extension to properly install itself into the CEP/extensions folder on mac. From what I gather in the examples, the complete extension folder (where the CSXS/manifest.xml is located) should be packaged using the ZXPSignCmd tool into a single extension.zxp file. There's a few questions I have here:
Is this correct?
Yes, that's correct.
Is it also correct that the .mxi file is not necessary here?
Yes. It's an optional file.
When I try to install this .zxp file directly after packaging it, I get a success message but the extension is not present in the CEP/extensions folder (checked both the common and user libraries). Is this the expected behaviour? If yes, where is the extension installation location?
So, you can have an unsigned CEP extension that should work provided you've set debug mode. Note that the CSXS version I referred to there is the same as the CEP version, you can check version numbers against product numbers on this chart... you may need to set the debug mode to CSXS.11
for the latest Illustrator version.
Typically this sort of thing happens when:
- If you haven't specified the right product version in the manifest
- Illustrator in particular seems very picky about this, so be sure to put the minimum host app as a single whole number, like "27". That is to say, don't use a range, and try it without a decimal.
Product/
|__Extension/
|__extension.zxp
|__Plugin/
|__plugin.aip
|__id.mxi
where the id.mxi specifies where the contents should go. Is this correct?
Yes, that looks correct to me...
However, I think you don't have to have a ZXP inside a ZXP, I think you can structure it like this:
myCEPplugin.zxp
β- myCEPdir
β β- index.js
β β- index.jsx
β β- manifest.xml
β β- index.html
β β- CSInterface.js
ββ id.mxi
When trying to install this with the ExManCmd CLI I just get the cryptic error Failed to install, status = -164! back. I understand from this resource that there's probably something wrong with the files part, but I need help understanding what. Some additional questions/notes:
Is the destination="$installfolder/Plug-ins" part correct usage of the path tokens? Is this the best way to install an accompanying .aip plugin for the user?
I have tried commenting out the entire plugin part of the .mxi and deleting the files prior to signing. When the plugin part is included, the error is Failed to install, status = -160!. When it isn't, the error is the Failed to install, status = -164! reported earlier.
π€ -160, "File not found"... that does imply that the id.mxi
file isn't working quite right.
You could do a sanity check, and download the CEP sample extension and see if Illustrator will launch it. (I've been meaning to add a zipped version of the sample to the repo so it's easier to test...)
The signing tool seems to create META-INF folders in the input folders, what are those? Are they just artifacts or are they used for something?
I don't know. π I'll defer to @sujaisivanandan on that...
This one is a little bit off topic: Where do you get the ID for the plugin? On this page the ID is "[...] assigned by Adobe when you submit your extension." But from what I've read you need a valid package to be able to submit the .zxp package, which seems to create a catch-22 situation.
I was just talking to an Engineering Manager about updating the MXI documentation, so this is good to note...
If you're distributing your extension through Adobe's plugin marketplace, you'll get an id number, but this isn't a requirement. You're not obligated to distribute there.
In Steve's examples, he's just thrown in: id="id"
or id="EXTENSION-ID"
Someone else ran into a problem recently where the product familyname
in the mxi file was creating a problem...
The MXI documentation seems like a relic from the Extension Manager days... Extension Manager was deprecated, but it's still necessary to use MXI files for installing more than just the expected CEP files.
Let us know if you figure out what the issue is!
from getting-started-guides.
Hi!
Thanks for the awesome reply!! I was just able to properly install both the extension into the CEP/extensions
-folder and the Plug-in into the Adobe Illustrator/Plug-ins
-folder!
I discovered the main issue when doing a sanity check with the test extension as you suggested. While debugging I've just installed the ZXP using the tools, but to remove it I just removed the folder manually. When I tried re-installing the test extension a few times the same issue appeared, which made me look into it. Turns out you have to remove the extension using the tool too, otherwise the installer just returns a success message without (seemingly) actually doing anything since it's already installed. For future versions it would be pretty cool if there was some kind of error or warning when this happens.
I corrected all version numbers as you suggested, but when I backtracked to see if they caused the 160
& 164
error they seemed not to. I also tried to copy earlier versions of my MXI that failed with those error codes too, but I couldn't reproduce it today so I'm guessing it was a human error.
Also a cautionary note about placing the plugin: the installer seems to overwrite anything in the folder specified in the MXI. I accidentally nuked my Illustrator installation a few times to get it right π
Thanks for all the help and information, I'm very happy it's working now!
from getting-started-guides.
Wait, OK, above you mention "the installer" and "the tool" - are you talking about UPIA or ExManCmd? (Or something else?) Just checking!
It's also worth noting that you don't have to use either tool for CEP, you can unzip ZXPs and put the folder in one of the valid CEP directories... (this is called "side-loading" internally) I mean provided the extension hasn't touched Adobe's Exchange Marketplace...
from getting-started-guides.
The mistake I made applies to both, so 'the tool/s' in the post above refers to both ExManCmd and UPIA. When I said 'the installer' I also meant those two tools, sorry about the confusion.
I see, interesting! Thanks for the info.
from getting-started-guides.
Related Issues (20)
- openDocument() does not execute when clicking on the 'Open' button for the "Getting Started with CEP Extensions" example. HOT 1
- Empty console with error while trying to debug CEP extension HOT 2
- Extension won't show up in menu HOT 3
- Unable to install a self-signed CEP extension using ExManCmd.exe. HOT 1
- jh
- gg
- Adobe CEP Extension
- Does Adobe provide official UI kit for extensions? HOT 5
- Missing ExManBridgeTalkCmd file in the ExManCmd download for Mac HOT 6
- Mistake in the tutorial: Client-side debugging
- How to keep devtools connected after reloading my extension HOT 2
- Error - Failed to verify signature. Signature might have been tampered with. HOT 7
- SDK_Invert_ProcAmp Doesn't Build on Xcode 13
- Issue in manifest with the version of CSXS
- About Premiere Pro Scripting Guide
- Mention last version of PS to support CEP HOT 1
- Update Guide to use Illustrator examples instead of Photoshop
- Replace ExManCmd with UPIA
- My First Panel extension - Need Help HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from getting-started-guides.