/usr/bin/java not found when dumping assetic
Asked Answered
U

1

6

I ran php app/console assetic:dump to publish assetics for a Symfony2 application, but I got this error:

[Assetic\Exception\FilterException]
  An error occurred while running:
  '/usr/bin/java' '-jar' '/home/devx/public_html/mutualcontratos/app/Resources/java/yuicompressor-2.4.7.jar' '--charset' 'UTF-8' '-o' '/tmp/YUI-OUT-3E8eNl' '--type' 'js' '/tmp/YUI-IN-DmkGnm'

  Error Output:
  sh: /usr/bin/java: No existe el fichero o el directorio

That means that java executable could not be found.

The fact is that I have another Symfony2 app on the same server and it works there. I compared both config.yml files and they are identical. What is missing in this other app?

This is the full config.xml file:

imports:
    - { resource: parameters.yml }
    - { resource: security.yml }

framework:
    #esi:             ~
    translator:      { fallback: es_CL }
    secret:          %secret%
    router:
        resource: "%kernel.root_dir%/config/routing.yml"
        strict_requirements: ~
    form:            ~
    csrf_protection: ~
    validation:      { enable_annotations: true }
    templating:
        engines: ['twig']
        #assets_version: SomeVersionScheme
    default_locale:  "%locale%"
    trusted_proxies: ~
    session:         ~
    fragments:       ~
    http_method_override: true

# Twig Configuration
twig:
    debug:            %kernel.debug%
    strict_variables: %kernel.debug%

# Assetic Configuration
assetic:
    debug:          %kernel.debug%
    use_controller: false
    bundles:        [ FOSUserBundle, MutualContratosBundle ]
    #java: /usr/bin/java
    filters:
        cssrewrite: ~
        #closure:
        #    jar: %kernel.root_dir%/Resources/java/compiler.jar
        yui_css:
            jar: %kernel.root_dir%/Resources/java/yuicompressor-2.4.7.jar
        yui_js:
             jar: %kernel.root_dir%/Resources/java/yuicompressor-2.4.7.jar

# Doctrine Configuration
doctrine:
    dbal:
        driver:   %database_driver%
        host:     %database_host%
        port:     %database_port%
        dbname:   %database_name%
        user:     %database_user%
        password: %database_password%
        charset:  UTF8
        # if using pdo_sqlite as your database driver, add the path in parameters.yml
        # e.g. database_path: %kernel.root_dir%/data/data.db3
        # path:     %database_path%

    orm:
        auto_generate_proxy_classes: %kernel.debug%
        auto_mapping: true

# Swiftmailer Configuration
swiftmailer:
    transport: %mailer_transport%
    host:      %mailer_host%
    username:  %mailer_user%
    password:  %mailer_password%
    spool:     { type: memory }

fos_user:
    db_driver: orm # other valid values are 'mongodb', 'couchdb'
    firewall_name: main
    user_class: Mutual\ContratosBundle\Entity\Usuario
Uncontrollable answered 14/11, 2016 at 13:2 Comment(5)
¿Have you tried to execute the command from the project folder to see what is wrong with it?Canopus
I am running the command from project folder.Uncontrollable
I'm sorry. I didn't explained myself properly. I was refering to the command outputed by the error. /usr/bin/java -jar...Canopus
Can you please run "whereis java" from a command line shell to locate the java binary just to be sure.Sigridsigsmond
java: /usr/share/java...... that is not actually where java executale is in, and in fact, I have searched all over the disk but it was not found. The curiosity is that the other site do work, even when no Java is present in the server. This is a CentOS server with standard installation, so was sure Java was installed.Uncontrollable
U
2

That is strange.... java does not exist in that folder... however, I have another symfony2 site in the same server and it works. I really don't know what assetic is doing to publish assets.

Uncontrollable answered 18/11, 2016 at 2:4 Comment(4)
I assume that "other symphony2 site" has also commented out java in its configuration? If so, it must be using java from default PATH. If you hava a handle on the default PATH of that site, you can search through it. Otherwise, on that other site, in its configuration, you could put a shell script (in place of java) and print the PATH to see which java is it using ..... Basically the sites are probably using two different PATH values (one with java and one without).Twirp
You use yuicompressor to rewrite CSS and assetics need java to compile.Amethyst
Both sites have the same config.yml with java path is also commented out, and both uses yui compressor... so, why one works and the other does not? The only differemce is that they are under different accounts in the serverUncontrollable
Maybe this is because you have not set JAVA_HOME on your second account ? Try "which java" with the differents accountsAmethyst

© 2022 - 2024 — McMap. All rights reserved.