[yocto] Recipe to Copy JAR files, not extract it

Paul Eggleton paul.eggleton at linux.intel.com
Thu Jun 19 06:47:29 PDT 2014


On Thursday 19 June 2014 15:40:59 Laurent d'Havé wrote:
> That worked great.
> 
> Except i'm now having a strange issue, been pulling hair's out for a
> couple of hours ...
> 
> WARNING: QA Issue: taxi: Files/directories were installed but not shipped
>    /usr/share
>    /usr/share/java
>    /usr/share/java/headless.jar
> 
> 
> And indeed, my jar file will not be bundled in the rootfs !!
> 
> Some copy-paste from my recipe :
> 
> SRC_URI = " \
> file://headless .jar;unpack=0 \
> "
> do_install() {
> install -m 0755 -d ${D}/usr/share/java
>   install -m 0755 ${WORKDIR}/headless .jar ${D}/usr/share/java
>   }
> 
> 
> Any clues ? If i change the path  /usr/bin  it works.
> Is it because i'm putting it in /usr/share/java ?
> But that's where all the other JAR's go ...

The key is "installed but not shipped" - you've installed the files, but they 
aren't being shipped in any package. The files in each package are specified 
using FILES, and /usr/share is ${datadir}, so I'd suggest something like the 
following:

FILES_${PN} += "${datadir}/java"

(Moving the files to /usr/bin works because that is already in the default 
value of FILES_${PN}, whereas /usr/share/java isn't).

Cheers,
Paul

-- 

Paul Eggleton
Intel Open Source Technology Centre



More information about the yocto mailing list