guacamole-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mike Jumper <>
Subject Re: Error Extension could not be loaded: Extension is missing guac-manifest.json
Date Fri, 29 Mar 2019 14:10:00 GMT
On Fri, Mar 29, 2019 at 3:45 AM Kamal Ezzaki <> wrote:

> this is my jar structure
> .
> ├── guac-manifest.json
> ├── images
> │   └── logo-placeholder.png
> └── translations
>     └── en.json
Make sure this actually *is* your jar's structure, not the structure of a
subdirectory within the .jar. You can list the contents of the .jar with:

unzip -l branding.jar

jar cf branding.jar branding     #zip -r not working for me

Neither will this. You are creating a .jar containing a subdirectory called
"branding". The .jar should contain guac-manifest.json at the root, not
within a subdirectory, and all files referenced within guac-manifest.json
should be referenced relative to the root, not relative to a subdirectory.

If things aren't working, I recommend checking your results rather than
blindly making changes. Here is what "jar cf branding.jar branding" would

[mjumper@dev-mjumper ~]$ mkdir branding
[mjumper@dev-mjumper ~]$ touch branding/foo
[mjumper@dev-mjumper ~]$ touch branding/bar
[mjumper@dev-mjumper ~]$ jar cf branding.jar branding
[mjumper@dev-mjumper ~]$ unzip -l branding.jar
Archive:  branding.jar
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  03-29-2019 07:04   META-INF/
       69  03-29-2019 07:04   META-INF/MANIFEST.MF
        0  03-29-2019 07:04   branding/
        0  03-29-2019 07:03   branding/foo
        0  03-29-2019 07:04   branding/bar
---------                     -------
       69                     5 files
[mjumper@dev-mjumper ~]$

Note how the files in question are still in a subdirectory, not the root.
You do not want this. The guac-manifest.json absolutely must be at the
root, and all paths within guac-manifest.json must be relative to the root.

mv branding.jar /usr/share/tomcat/.guacamole/extensions/
> mv css /share/tomcat/.guacamole/extensions/

Why are you putting the "css" directory in GUACAMOLE_HOME/extensions/? It
should be part of your extension, as declared in your guac-manifest.json.
Guacamole loads extensions from the extensions directory, not arbitrary
directories containing CSS.

> service guacd restart

You do not need to restart guacd. Only tomcat.

- Mike

View raw message