OK so I know how to remove class files from all the jars under a dir. But, now I have different layer from a docker image, each layer is a tar file, and in the tar file there are the jar files.
Can I remove the class files from the jar files, packaged in tar files?
$ tree -L 3
.
├── 29e0fb8afe376cb02219c977cba1c9a80cca895f7f17b72c356f3e25a63337b9
│ ├── json
│ ├── layer.tar
│ └── VERSION
├── 3b75d6634da4d4f4932d2affeabb7454dc51ba160c3833b386c34e328da8f0ba
│ ├── amq # <<<<< this layer is extracted already, and you can see all the jars here. Other layers are not
│ │ ├── activemq-all-5.11.0.redhat-630495.jar
│ │ ├── bin
│ │ ├── conf
│ │ ├── data
│ │ ├── docs
│ │ ├── examples
│ │ ├── lib
│ │ ├── LICENSE
│ │ ├── NOTICE
│ │ ├── README.txt
│ │ ├── webapps
│ │ └── webapps-demo
│ ├── json
│ ├── layer.tar
│ ├── temp
│ └── VERSION
├── c1fa0e994b2d29f60fd2a6caecbe1ac3f987d001903523d60e532b6e08b094f0
│ ├── json
│ ├── layer.tar
│ └── VERSION
├── c8c84a6c1be5bdfc8caafd23082fd725e84f1c9cddb98fd56cad3a62544b2a3c.json
├── ef5088f89fbac64d2d5982ba14492227f60db1221f6bfd6290c6364a2a95a7e3
│ ├── json
│ ├── layer.tar
│ └── VERSION
├── manifest.json
├── repositories
└── script.sh # <<<<< the script is here
So you ask me why?
Well, did you hear people talking about log4j recently? :) I am doing this right now: log4j vulnerability check: how to quickly detect if log4j is used, in mavevn/in an image? "mvn dependency:tree" does not give a full picture
If someone can tell me how to remove these classes from jib maven plugin, that's better. They are from a base image and I doubt we could do that, though.
How do I use py2app for a project with the below structure. All the online resources and documents show what to do for a single file.
.MyApp
├── Resources
│ ├── database.pkl
│ ├── images_dir
├── MyApp
│ ├── __init_.py
│ ├── file1.py
│ ├── file2.py
│ ├── main.py
├── venv
I have the following folder structure:
> tree -L 3
├── pom.xml
├── src
│ ├── main
│ │ ├── java
│ │ └── resources
│ └── test
│ ├── groovy
│ └── resources
I tried to build docker image containing those folders together with files using the following Dockerfile:
FROM jamesdbloom/docker-java8-maven
USER root
RUN mkdir src
ADD ./src/* ./src/
ADD pom.xm
However, the structure in docker image is different. Particularly, I can no longer find main and test folders.
$ tree -L 3
.
├── pom.xml
├── src
│ ├── groovy
│ │ └── com
│ ├── java
│ │ └── com
│ └── resources
│ ├── ext_sample_input.json
│ ├── hist_sample_input.json
│ └── sample_input.json
Why is it so?
From official documentation:
Note: The directory itself is not copied, just its contents.
Change your ADD statement to:
ADD ./src ./src/
I am trying to install node and yeoman. I was following this link:
http://yeoman.io/codelab/setup.html
After getting the errors below, I tried a bunch of solutions found here:
Node package ( Grunt ) installed but not available
But it did not work.
I was able to do sudo npm install -g bower and sudo npm install -g grunt and sudo npm install -g yo, but only yo seems to not be able to download.
/Users/myname/npm/bin/yeoman -> /Users/myname/npm/lib/node_modules/yeoman/bin/yeoman
/Users/myname/npm/bin/_yeomaninsight -> /Users/myname/npm/lib/node_modules/yeoman/bin/yeomaninsight.py
yeoman#0.9.6 /Users/myname/npm/lib/node_modules/yeoman
├── which#1.0.5
├── open#0.0.2
├── colors#0.6.2
├── mkdirp#0.3.5
├── faye-websocket#0.4.4
├── fstream#0.1.26 (inherits#2.0.1, graceful-fs#3.0.2)
├── rimraf#2.0.3 (graceful-fs#1.1.14)
├── shelljs#0.0.9
├── request#2.9.203
├── tar#0.1.19 (inherits#2.0.1, block-stream#0.0.7)
├── grunt-contrib-coffee#0.3.2 (grunt-lib-contrib#0.3.1)
├── coffee-script#1.3.3
├── html-minifier#0.4.5
├── fstream-ignore#0.0.5 (inherits#1.0.0, minimatch#0.2.14)
├── grunt-jasmine-task#0.2.3 (temporary#0.0.8)
├── requirejs#2.0.6
├── grunt-mocha#0.1.7 (growl#1.7.0, temporary#0.0.8)
├── clean-css#0.3.3 (optimist#0.1.9)
├── cheerio#0.9.2 (underscore#1.6.0, entities#0.5.0, htmlparser2#2.6.0, cheerio-select#0.0.3)
├── es6-collections#0.2.0
├── connect#2.2.2 (qs#0.4.2, mime#1.2.4, debug#1.0.2, crc#0.1.0, formidable#1.0.9)
├── bower#0.3.2 (stable#0.1.5, archy#0.0.2, semver#1.1.4, async#0.1.22, tmp#0.0.23, nopt#2.0.0, lodash#0.9.2, vows#0.6.4, glob#3.1.21, rc#0.0.8, read-package-json#0.1.13, request#2.11.4, hogan.js#2.0.0)
├── prompt#0.1.12 (async#0.1.22, pkginfo#0.3.0, winston#0.5.11)
├── grunt#0.4.0-a (dateformat#1.0.2-1.2.3, semver#1.0.14, async#0.1.22, hooker#0.2.3, nopt#1.0.10, temporary#0.0.8, underscore#1.3.3, underscore.string#2.1.1, glob-whatev#0.1.8, gzip-js#0.3.2, uglify-js#1.2.6, jshint#0.7.3, nodeunit#0.7.4)
└── yeoman-generators#0.9.5 (diff#1.0.8, mime#1.2.11, cheerio#0.10.8)
mynames-MacBook:~ myname$ yo --version
-bash: yo: command not found
When run pub serve on Mac, it could not find transformer.dart:
Transformer library "package:observe/transformer.dart" not found
I'm using OSX 10.9, DartEditor 30798.
pub build works fine.
I searched and saw pub build fails if proxy is define. But I'm connecting to network directory without proxy.
Here is the observe package under packages directory, transformer.dart is there:
observe
├── html.dart
├── observe.dart
├── src
│ ├── bind_property.dart
│ ├── change_notifier.dart
│ ├── change_record.dart
│ ├── compound_path_observer.dart
│ ├── dirty_check.dart
│ ├── list_diff.dart
│ ├── list_path_observer.dart
│ ├── metadata.dart
│ ├── microtask.dart
│ ├── observable.dart
│ ├── observable_box.dart
│ ├── observable_list.dart
│ ├── observable_map.dart
│ ├── path_observer.dart
│ └── to_observable.dart
├── transform.dart
└── transformer.dart
I had such problem in the renamed polymer project. After I made new polymer project and copy all logic in created files. The problem was solved.