Code Monkey home page Code Monkey logo

Comments (4)

ErinFinnegan avatar ErinFinnegan commented on June 14, 2024 2

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:

Have you tried UPIA?

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.

KristalAlfred avatar KristalAlfred commented on June 14, 2024 1

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.

ErinFinnegan avatar ErinFinnegan commented on June 14, 2024

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.

KristalAlfred avatar KristalAlfred commented on June 14, 2024

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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.