`maven compile` can not find package when they are installed in ~/.m2 - maven

I am trying to learn how to build a maven project.
this is my ./src/main/java/Hello.java
import com.google.code.gson.*;
public class Hello{
public static void main(String[] args) {
System.out.println("Hello world");
}
}
This file does't do something actually, I just want to learn how to import a 3rd library.
this is my ./pom.xml
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.5</version>
</dependency>
So, I try to execute mvn compile.
But there is an error:
package com.google.code.gson does not exist
But in my ~/.m2/repository
$ tree -L 3 ~/.m2/repository/com/google/code/gson
/Users/apple/.m2/repository/com/google/code/gson
├── 2.8.5
│   ├── gson-2.8.5.jar.lastUpdated
│   └── gson-2.8.5.pom.lastUpdated
├── gson
│   └── 2.8.5
│   ├── _remote.repositories
│   ├── gson-2.8.5.jar
│   ├── gson-2.8.5.jar.sha1
│   ├── gson-2.8.5.pom
│   └── gson-2.8.5.pom.sha1
I seems that mvn don't add ~/.m2/repository to my classpath, How to fix this?
$ mvn -v
Apache Maven 3.6.0 (97c98ec64a1fdfee7767ce5ffb20918da4f719f3; 2018-10-25T02:41:47+08:00)
Maven home: /Users/apple/Downloads/apache-maven-3.6.0
Java version: 10, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk-9.0.1.jdk/Contents/Home
Default locale: en_CN, platform encoding: UTF-8
OS name: "mac os x", version: "10.12.6", arch: "x86_64", family: "mac"

According to GSON javadoc , there is no package called com.google.code.gson.*. The root package starts from com.google.gson . So change to :
import com.google.gson.*;
What you see in the <groupId> has nothing to do with the package name. Always refer to the javadoc or its source codes for the package name.

Related

How to debug maven dependencies logic?

Maven download package XYZ on compile time on step "maven-compiler-plugin:3.1:compile (default-compile)"
but mvn -U -X -e dependency:tree -Dverbose | grep XYZ doesn't show anything.
How can i find out why is maven downloading dependency XYZ?
edit:
don't want to turn this into a collective POM debug exercise, but here is what i am trying to debug:
after mvn package (with an empty ~/.m2/repository) i end up with
.m2/repository/log4j/log4j
├── 1.2.12
│   ├── log4j-1.2.12.jar
│   ├── log4j-1.2.12.jar.sha1
│   ├── log4j-1.2.12.pom
│   ├── log4j-1.2.12.pom.sha1
│   └── _remote.repositories
└── 1.2.17
├── log4j-1.2.17.jar
├── log4j-1.2.17.jar.sha1
├── log4j-1.2.17.pom
├── log4j-1.2.17.pom.sha1
└── _remote.repositories
i do not have any direct or indirect use of log4j. I'm pretty sure as soon as I post my pom someone will answer "of course you have ABC which everyone knows brings in XYZ"... but i would very much to understand how to force maven to show more information that helps me to get to that conclusion in different cases.
So some plugin you are using in your POM brings a log4j dependency.
First of all, this not really anything to worry about because these dependencies are not just for your JAR/WAR/EAR, but only during the build.
Secondly, excluding them at the plugin level will likely cause the build to fail.
Lastly, your problem might just be solved by updating your plugins to the latest version.

golang unknown revision module/vX.Y.Z and importing package properly

I have a golang application structure like this:
.
├── calc
│   ├── go.mod
│   ├── main.go
│   └── Makefile
├── go.mod
├── LICENSE
├── num
│   ├── go.mod
│   └── num.go
└── README.md
Where calc is an "application" where I'm importing the num package to add 2 numbers.
calc/go.mod
go 1.15
require github.com/github_username/goapp/num v0.2.1
num/go.mod
module github.com/github_username/goapp/num/v0.2.1
go 1.15
go.mod
module github.com/github_username/goapp/v0.2.1
go 1.15
When in /calc, and I run go run main.go, I get the following:
go: github.com/github_username/goapp/num#v0.2.1: reading github.com/github_username/goapp/num/num/go.mod at revision num/v0.2.1: unknown revision num/v0.2.1
What am I doing wrong? The github repo has the annotated tags.
For further context, I'm mimicking a production setup where we have six different mini golang services in folders such as calc, calc2, etc. where each "calc" service has a go.mod file.
module github.com/github_username/goapp/num/v0.2.1
Is nonsense. The semver version tag "v0.2.1" does not belong into the module name.
(Note that for major versions > 1, e.g. 4.3.1, the major version becomes part of the name like in module github.com/user/proj/folder/v4).
And one more: There are no source code belonging to the root go.mod so this module makes no sense whatsoever.
You really should not make that many modules.
Are you working with private repositories?
if yes, then you need to configure OAuth authentication:
export GITHUB_TOKEN=MY_GITHUB_TOKEN
git config --global url."https://${GITHUB_TOKEN}:x-oauth-basic#github.com/".insteadOf "https://github.com/"
Now, if you don't have the necessity to use private repositories!
Turn your repositories to the public that will solve the problem too.

error: module not found: org.lwjgl.natives in multi-module gradle build

I'm getting the following errors trying to run a multi-module gradle build:
/Users/ashley/Personal/juggernaut/display/src/main/java/module-info.java:2: error: module not found: org.lwjgl.natives
requires org.lwjgl.natives;
^
/Users/ashley/Personal/juggernaut/display/src/main/java/module-info.java:3: error: module not found: org.lwjgl.glfw.natives
requires org.lwjgl.glfw.natives;
^
/Users/ashley/Personal/juggernaut/display/src/main/java/module-info.java:4: error: module not found: org.lwjgl.opengl.natives
requires org.lwjgl.opengl.natives;
^
/Users/ashley/Personal/juggernaut/display/src/main/java/module-info.java:5: error: module not found: org.lwjgl.stb.natives
requires org.lwjgl.stb.natives;
^
/Users/ashley/Personal/juggernaut/display/src/main/java/module-info.java:6: error: module not found: org.lwjgl.assimp.natives
requires org.lwjgl.assimp.natives;
My project structure is as follows:
├── build.gradle
├── display
│   ├── build.gradle
│   └── src
│   └── main
│   ├── java
│   │   ├── module-info.java
├── engine
│   ├── build.gradle
│   └── src
│   └── main
│   ├── java
│   │   ├── module-info.java
└── settings.gradle
the module-info.java for display requires the necessary LWJGL3 modules:
module uk.ashleybye.juggernaut.display {
requires org.lwjgl.natives;
requires org.lwjgl.glfw.natives;
requires org.lwjgl.opengl.natives;
requires org.lwjgl.stb.natives;
requires org.lwjgl.assimp.natives;
exports uk.ashleybye.juggernaut.display;
}
The relevant dependencies are included in the build.gradle:
project.ext.lwjglVersion = "3.2.2"
project.ext.lwjglNatives = "natives-macos"
dependencies {
implementation "org.lwjgl:lwjgl:$lwjglVersion"
implementation "org.lwjgl:lwjgl-assimp:$lwjglVersion"
implementation "org.lwjgl:lwjgl-glfw:$lwjglVersion"
implementation "org.lwjgl:lwjgl-openal:$lwjglVersion"
implementation "org.lwjgl:lwjgl-opengl:$lwjglVersion"
implementation "org.lwjgl:lwjgl-stb:$lwjglVersion"
runtimeOnly "org.lwjgl:lwjgl:$lwjglVersion:$lwjglNatives"
runtimeOnly "org.lwjgl:lwjgl-assimp:$lwjglVersion:$lwjglNatives"
runtimeOnly "org.lwjgl:lwjgl-glfw:$lwjglVersion:$lwjglNatives"
runtimeOnly "org.lwjgl:lwjgl-openal:$lwjglVersion:$lwjglNatives"
runtimeOnly "org.lwjgl:lwjgl-opengl:$lwjglVersion:$lwjglNatives"
runtimeOnly "org.lwjgl:lwjgl-stb:$lwjglVersion:$lwjglNatives"
}
Engine requires uk.ashleybye.juggernaut.display; and has an implementation dependency: implementation project(":display").
My version info:
./gradlew --version Sat 17 Aug 09:31:44 2019
------------------------------------------------------------
Gradle 5.5.1
------------------------------------------------------------
Build time: 2019-07-10 20:38:12 UTC
Revision: 3245f748c7061472da4dc184991919810f7935a5
Kotlin: 1.3.31
Groovy: 2.5.4
Ant: Apache Ant(TM) version 1.9.14 compiled on March 12 2019
JVM: 12 (Oracle Corporation 12+33)
OS: Mac OS X 10.14.6 x86_64
Why can gradle not find the modules?
Your module-info.class doesn't need to include any natives at all.
Remove all the .nativess from each requires.
Also, you can compact your build.gradle:
["", "-assimp", "-glfw", "-openal", "-opengl", "-stb"].each {
String base = "org.lwjgl:lwjgl$it:$lwjgl_version"
implementation base
runtimeOnly = "$base:natives-$lwjgl_natives"
}
You may refer to this project of ours for reference, it's a multi-module project, which relies heavily on lwjgl and uses JPMS too.

Error with imports after packaging using setup tools

I am trying to package my project as a library in python using setup tools. Being my first time, I arranged my project in the following directory. Importing the package from its parent directory does not cause any errors and is working fine. But when I install it using setup tools and try to import from a general directory, I'm getting an Import error for importing files inside the packa
The directory structure is as follows:
driver_scoring
│   ├── config
│   │   ├── config.py
│   ├── processing
│   │   ├── data_management.py
│   │   ├── scoring_components.py
│   │   └── validation.py
│   ├── __init__.py
│   ├── pipeline.py
│   ├── predict.py
│   ├── train_pipeline.py
│   └── VERSION
├── MANIFEST.in
├── requirements.txt
└── setup.py
And in my init.py file, I have included the following code:
import os
from driver_scoring.config import config
with open(os.path.join(config.PACKAGE_ROOT, 'VERSION')) as version_file:
__version__ = version_file.read().strip()
And I am getting the following error:
1 import os
2
----> 3 from driver_scoring.config import config
4
5 with open(os.path.join(config.PACKAGE_ROOT, 'VERSION')) as version_file:
ModuleNotFoundError: No module named 'driver_scoring.config'
And my setup.py is as follows:
NAME = 'driver_scoring'
DESCRIPTION = ''
URL = ''
EMAIL = ''
AUTHOR = 'Nevin Baiju'
REQUIRES_PYTHON = '>=3.6.0'
def list_reqs(fname='requirements.txt'):
with open(fname) as fd:
return fd.read().splitlines()
here = os.path.abspath(os.path.dirname(__file__))
try:
with io.open(os.path.join(here, 'README.md'), encoding='utf-8') as f:
long_description = '\n' + f.read()
except FileNotFoundError:
long_description = DESCRIPTION
ROOT_DIR = Path(__file__).resolve().parent
PACKAGE_DIR = ROOT_DIR / NAME
about = {}
with open(PACKAGE_DIR / 'VERSION') as f:
_version = f.read().strip()
about['__version__'] = _version
setup(
name=NAME,
version=about['__version__'],
description=DESCRIPTION,
long_description=long_description,
long_description_content_type='text/markdown',
author=AUTHOR,
author_email=EMAIL,
python_requires=REQUIRES_PYTHON,
url=URL,
packages=find_packages(exclude=('tests',)),
package_data={'driver_scoring': ['VERSION']},
install_requires=list_reqs(),
extras_require={},
include_package_data=True,
license='MIT',
classifiers=[
'License :: OSI Approved :: MIT License',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: Implementation :: CPython',
'Programming Language :: Python :: Implementation :: PyPy'
],
)
I am not getting any errors when I try to import it from the project's parent directory and I am able to run the project as desired. However, when I try to install and import the project from the installed directory, I am getting the import error.
The issue was solved by myself. I had forgotten to add the init.py file in the config folder and that is what caused the import errors.

Could not download http://nodejs.org/dist/v0.12.13/node-v0.12.13-darwin-x64.tar.g

I'm getting this error trying to build Zeppelin 0.6. on OS X 10.11.6
ERROR] Failed to execute goal com.github.eirslett:frontend-maven-plugin:0.0.25:install-node-and-npm (install node and npm) on project zeppelin-web: Could not download Node.js: Could not download http://nodejs.org/dist/v0.12.13/node-v0.12.13-darwin-x64.tar.gz: Connect to localhost:3128 [localhost/127.0.0.1, localhost/0:0:0:0:0:0:0:1, localhost/fe80:0:0:0:0:0:0:1%1] failed: Connection refused -> [Help 1]
Node.js:
David-Laxers-MacBook-Pro:zeppelin davidlaxer$ npm -version
2.15.8
Maven:
David-Laxers-MacBook-Pro:zeppelin davidlaxer$ mvn -version
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-10T08:41:47-08:00)
Maven home: /opt/local/share/java/maven3
Java version: 1.8.0_05, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "10.11.6", arch: "x86_64", family: "mac
I can manually run the npm command that is failing from the zeppelin/zeppelin-web subdirectory as root:
$ sudo npm install --color=false --proxy=http://localhost:3128
Password:
npm WARN package.json zeppelin-web#0.0.0 No license field.
npm WARN engine karma#0.12.37: wanted: {"node":">=0.8 <=0.12 || >=1 <=2"} (current: {"node":"4.4.7","npm":"2.15.8"})
npm WARN deprecated minimatch#0.2.14: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated minimatch#2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated graceful-fs#3.0.8: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs#^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
npm WARN deprecated graceful-fs#1.2.3: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs#^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
npm WARN deprecated minimatch#0.3.0: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated minimatch#1.0.0: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated tough-cookie#2.2.2: ReDoS vulnerability parsing Set-Cookie https://nodesecurity.io/advisories/130
npm WARN deprecated graceful-fs#2.0.3: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs#^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
npm WARN deprecated lodash#1.0.2: lodash#<3.0.0 is no longer maintained. Upgrade to lodash#^4.0.0.
npm WARN deprecated CSSselect#0.7.0: the module is now available as 'css-select'
> fsevents#1.0.14 install /Users/davidlaxer/zeppelin/zeppelin-web/node_modules/karma/node_modules/chokidar/node_modules/fsevents
> node-pre-gyp install --fallback-to-build
[fsevents] Success: "/Users/davidlaxer/zeppelin/zeppelin-web/node_modules/karma/node_modules/chokidar/node_modules/fsevents/lib/binding/Release/node-v46-darwin-x64/fse.node" already installed
Pass --update-binary to reinstall or --build-from-source to recompile
npm WARN deprecated CSSwhat#0.4.7: the module is now available as 'css-what'
> ws#0.4.32 install /Users/davidlaxer/zeppelin/zeppelin-web/node_modules/karma/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws
> (node-gyp rebuild 2> builderror.log) || (exit 0)
npm WARN cannot run in wd phantomjs#1.9.20 node install.js (wd=/Users/davidlaxer/zeppelin/zeppelin-web/node_modules/karma-phantomjs-launcher/node_modules/phantomjs)
grunt-contrib-copy#0.5.0 node_modules/grunt-contrib-copy
karma-jasmine#0.1.6 node_modules/karma-jasmine
grunt-cache-bust#1.3.0 node_modules/grunt-cache-bust
grunt-newer#0.7.0 node_modules/grunt-newer
├── async#0.2.10
└── rimraf#2.2.6
grunt-contrib-clean#0.5.0 node_modules/grunt-contrib-clean
└── rimraf#2.2.8
grunt-karma#0.8.3 node_modules/grunt-karma
└── lodash#2.4.2
bower#1.7.2 node_modules/bower
└── semver-utils#1.1.1
jshint-stylish#0.2.0 node_modules/jshint-stylish
├── text-table#0.2.0
└── chalk#0.4.0 (has-color#0.1.7, ansi-styles#1.0.0, strip-ansi#0.1.1)
time-grunt#0.3.2 node_modules/time-grunt
├── date-time#0.1.1
├── pretty-ms#0.1.0
├── hooker#0.2.3
├── text-table#0.2.0
└── chalk#0.4.0 (has-color#0.1.7, ansi-styles#1.0.0, strip-ansi#0.1.1)
grunt-filerev#0.2.1 node_modules/grunt-filerev
├── each-async#0.1.3
└── chalk#0.4.0 (ansi-styles#1.0.0, has-color#0.1.7, strip-ansi#0.1.1)
grunt-contrib-concat#0.4.0 node_modules/grunt-contrib-concat
└── chalk#0.4.0 (ansi-styles#1.0.0, has-color#0.1.7, strip-ansi#0.1.1)
grunt-concurrent#0.5.0 node_modules/grunt-concurrent
├── async#0.2.10
└── pad-stdio#0.1.1 (lpad#0.2.1)
load-grunt-tasks#0.4.0 node_modules/load-grunt-tasks
├── multimatch#0.1.0 (lodash#2.4.2, minimatch#0.2.14)
└── findup-sync#0.1.3 (lodash#2.4.2, glob#3.2.11)
grunt-cli#0.1.13 node_modules/grunt-cli
├── resolve#0.3.1
├── nopt#1.0.10 (abbrev#1.0.9)
└── findup-sync#0.1.3 (lodash#2.4.2, glob#3.2.11)
grunt-usemin#2.6.2 node_modules/grunt-usemin
├── lodash#2.4.2
├── debug#2.1.3 (ms#0.7.0)
└── chalk#0.5.1 (ansi-styles#1.1.0, escape-string-regexp#1.0.5, supports-color#0.2.0, strip-ansi#0.3.0, has-ansi#0.1.0)
autoprefixer#6.4.0 node_modules/autoprefixer
├── normalize-range#0.1.2
├── num2fraction#1.2.2
├── postcss-value-parser#3.3.0
├── browserslist#1.3.5
├── caniuse-db#1.0.30000518
└── postcss#5.1.2 (js-base64#2.1.9, source-map#0.5.6, supports-color#3.1.2)
grunt-postcss#0.7.2 node_modules/grunt-postcss
├── es6-promise#3.2.1
├── diff#2.2.3
├── chalk#1.1.3 (escape-string-regexp#1.0.5, supports-color#2.0.0, ansi-styles#2.2.1, has-ansi#2.0.0, strip-ansi#3.0.1)
└── postcss#5.1.2 (js-base64#2.1.9, source-map#0.5.6, supports-color#3.1.2)
grunt#0.4.5 node_modules/grunt
├── eventemitter2#0.4.14
├── dateformat#1.0.2-1.2.3
├── which#1.0.9
├── async#0.1.22
├── colors#0.6.2
├── getobject#0.1.0
├── lodash#0.9.2
├── rimraf#2.2.8
├── hooker#0.2.3
├── grunt-legacy-util#0.2.0
├── exit#0.1.2
├── coffee-script#1.3.3
├── iconv-lite#0.2.11
├── underscore.string#2.2.1
├── nopt#1.0.10 (abbrev#1.0.9)
├── glob#3.1.21 (inherits#1.0.2, graceful-fs#1.2.3)
├── minimatch#0.2.14 (sigmund#1.0.1, lru-cache#2.7.3)
├── findup-sync#0.1.3 (lodash#2.4.2, glob#3.2.11)
├── grunt-legacy-log#0.1.3 (grunt-legacy-log-utils#0.1.1, lodash#2.4.2, underscore.string#2.3.3)
└── js-yaml#2.0.5 (esprima#1.0.4, argparse#0.1.16)
grunt-svgmin#0.4.0 node_modules/grunt-svgmin
├── each-async#0.1.3
├── pretty-bytes#0.1.2
├── chalk#0.4.0 (has-color#0.1.7, ansi-styles#1.0.0, strip-ansi#0.1.1)
└── svgo#0.4.5 (colors#0.6.2, whet.extend#0.9.9, sax#0.6.1, coa#0.4.1, js-yaml#2.1.3)
grunt-contrib-connect#0.7.1 node_modules/grunt-contrib-connect
├── async#0.2.10
├── connect-livereload#0.3.2
├── open#0.0.4
├── portscanner#0.2.2 (async#0.1.15)
└── connect#2.13.1 (uid2#0.0.3, methods#0.1.0, debug#0.8.1, qs#0.6.6, pause#0.0.1, fresh#0.2.0, cookie-signature#1.0.1, raw-body#1.1.3, buffer-crc32#0.2.1, bytes#0.2.1, batch#0.5.0, compressible#1.0.0, cookie#0.1.0, negotiator#0.3.0, send#0.1.4, multiparty#2.2.0)
grunt-ng-annotate#0.10.0 node_modules/grunt-ng-annotate
├── ng-annotate#0.15.4 (tryor#0.1.2, stringset#0.2.1, stringmap#0.2.2, simple-fmt#0.1.0, simple-is#0.2.0, alter#0.2.0, stable#0.1.5, convert-source-map#0.4.1, optimist#0.6.1, source-map#0.1.43, acorn#0.11.0, ordered-ast-traverse#1.1.1)
└── lodash.clonedeep#3.0.2 (lodash._bindcallback#3.0.1, lodash._baseclone#3.3.0)
grunt-contrib-watch#0.6.1 node_modules/grunt-contrib-watch
├── async#0.2.10
├── lodash#2.4.2
├── tiny-lr-fork#0.0.5 (debug#0.7.4, qs#0.5.6, faye-websocket#0.4.4, noptify#0.0.3)
└── gaze#0.5.2 (globule#0.1.0)
grunt-angular-templates#0.5.9 node_modules/grunt-angular-templates
└── html-minifier#0.6.9 (relateurl#0.2.7, clean-css#2.2.23, change-case#2.1.6, cli#0.6.6, uglify-js#2.4.24)
grunt-contrib-htmlmin#0.3.0 node_modules/grunt-contrib-htmlmin
├── pretty-bytes#0.1.2
├── chalk#0.4.0 (has-color#0.1.7, ansi-styles#1.0.0, strip-ansi#0.1.1)
└── html-minifier#0.6.9 (relateurl#0.2.7, clean-css#2.2.23, change-case#2.1.6, cli#0.6.6, uglify-js#2.4.24)
grunt-goog-webfont-dl#0.1.2 node_modules/grunt-goog-webfont-dl
├── lodash#3.10.1
└── goog-webfont-dl#0.1.1 (commander#2.6.0, async#0.9.2, lodash#3.1.0, css#2.1.0, request#2.53.0)
grunt-contrib-cssmin#0.9.0 node_modules/grunt-contrib-cssmin
├── chalk#0.4.0 (has-color#0.1.7, ansi-styles#1.0.0, strip-ansi#0.1.1)
├── clean-css#2.1.8 (commander#2.1.0)
└── maxmin#0.1.0 (pretty-bytes#0.1.2, gzip-size#0.1.1)
grunt-wiredep#2.0.0 node_modules/grunt-wiredep
└── wiredep#2.2.2 (propprop#0.3.1, minimist#1.2.0, lodash#2.4.2, chalk#0.5.1, through2#0.6.5, bower-config#0.5.2, glob#4.5.3)
grunt-dom-munger#3.4.0 node_modules/grunt-dom-munger
└── cheerio#0.12.4 (entities#0.5.0, underscore#1.4.4, htmlparser2#3.1.4, cheerio-select#0.0.3)
grunt-contrib-jshint#0.10.0 node_modules/grunt-contrib-jshint
├── hooker#0.2.3
└── jshint#2.5.11 (underscore#1.6.0, strip-json-comments#1.0.4, exit#0.1.2, minimatch#1.0.0, shelljs#0.3.0, console-browserify#1.1.0, cli#0.6.6, htmlparser2#3.8.3)
karma-phantomjs-launcher#0.1.4 node_modules/karma-phantomjs-launcher
└── phantomjs#1.9.20 (progress#1.1.8, kew#0.7.0, which#1.2.10, request-progress#2.0.1, hasha#2.2.0, extract-zip#1.5.0, fs-extra#0.26.7, request#2.67.0)
grunt-contrib-uglify#0.4.1 node_modules/grunt-contrib-uglify
├── chalk#0.4.0 (ansi-styles#1.0.0, has-color#0.1.7, strip-ansi#0.1.1)
├── maxmin#0.1.0 (pretty-bytes#0.1.2, gzip-size#0.1.1)
└── uglify-js#2.7.0 (async#0.2.10, uglify-to-browserify#1.0.2, source-map#0.5.6, yargs#3.10.0)
karma#0.12.37 node_modules/karma
├── di#0.0.1
├── q#1.4.1
├── mime#1.3.4
├── graceful-fs#3.0.8
├── colors#1.1.2
├── lodash#3.10.1
├── useragent#2.1.9 (lru-cache#2.2.4)
├── source-map#0.4.4 (amdefine#1.0.0)
├── optimist#0.6.1 (wordwrap#0.0.3, minimist#0.0.10)
├── minimatch#2.0.10 (brace-expansion#1.1.6)
├── glob#5.0.15 (path-is-absolute#1.0.0, inherits#2.0.1, inflight#1.0.5, once#1.3.3)
├── rimraf#2.5.4 (glob#7.0.5)
├── log4js#0.6.38 (semver#4.3.6, readable-stream#1.0.34)
├── http-proxy#0.10.4 (colors#0.6.2, pkginfo#0.3.1, utile#0.2.1)
├── socket.io#0.9.16 (base64id#0.1.0, policyfile#0.0.4, redis#0.7.3, socket.io-client#0.9.16)
├── connect#2.30.2 (cookie#0.1.3, bytes#2.1.0, cookie-signature#1.0.6, utils-merge#1.0.0, on-headers#1.0.1, pause#0.1.0, content-type#1.0.2, fresh#0.3.0, parseurl#1.3.1, vhost#3.0.2, response-time#2.3.1, basic-auth-connect#1.0.0, cookie-parser#1.3.5, depd#1.0.1, qs#4.0.0, connect-timeout#1.6.2, debug#2.2.0, method-override#2.3.6, serve-favicon#2.3.0, http-errors#1.3.1, multiparty#3.3.2, type-is#1.6.13, finalhandler#0.4.0, morgan#1.6.1, express-session#1.11.3, serve-static#1.10.3, serve-index#1.7.3, errorhandler#1.4.3, compression#1.5.2, body-parser#1.13.3, csurf#1.8.3)
└── chokidar#1.6.0 (path-is-absolute#1.0.0, inherits#2.0.1, glob-parent#2.0.0, async-each#1.0.0, is-binary-path#1.0.1, is-glob#2.0.1, fsevents#1.0.14, readdirp#2.1.0, anymatch#1.3.0)
karma-coverage#0.5.5 node_modules/karma-coverage
├── source-map#0.5.6
├── minimatch#3.0.2 (brace-expansion#1.1.6)
├── dateformat#1.0.12 (get-stdin#4.0.1, meow#3.7.0)
└── istanbul#0.4.4 (abbrev#1.0.9, async#1.5.2, wordwrap#1.0.0, nopt#3.0.6, esprima#2.7.2, mkdirp#0.5.1, resolve#1.1.7, which#1.2.10, once#1.3.3, supports-color#3.1.2, js-yaml#3.6.1, escodegen#1.8.1, fileset#0.2.1, handlebars#4.0.5)
But the mvn command fails:
[INFO] Downloading Node.js from http://nodejs.org/dist/v0.12.13/node-v0.12.13-darwin-x64.tar.gz to /Users/davidlaxer/zeppelin/zeppelin-web/node_tmp/node.tar.gz
[INFO] Downloading via proxy proxy-http{protocol='http', host='localhost', port=3128}
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] Zeppelin: web Application .......................... FAILURE [ 3.336 s]
[INFO] Zeppelin: Server ................................... SKIPPED
[INFO] Zeppelin: Packaging distribution ................... SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4.025 s
[INFO] Finished at: 2016-08-07T00:02:45-07:00
[INFO] Final Memory: 23M/115M
[INFO] ------------------------------------------------------------------------
[WARNING] The requested profile "spark-2.0" could not be activated because it does not exist.
[WARNING] The requested profile "hadoop-2.6" could not be activated because it does not exist.
[ERROR] Failed to execute goal com.github.eirslett:frontend-maven-plugin:0.0.25:install-node-and-npm (install node and npm) on project zeppelin-web: Could not download Node.js: Could not download http://nodejs.org/dist/v0.12.13/node-v0.12.13-darwin-x64.tar.gz: Connect to localhost:3128 [localhost/127.0.0.1, localhost/0:0:0:0:0:0:0:1, localhost/fe80:0:0:0:0:0:0:1%1] failed: Connection refused -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
I tried following the proxy adjustments listed on the github Zeppelin repository:
Proxy settings (optional)
First of all, set your proxy configuration on Maven settings.xml.
<settings>
<proxies>
<proxy>
<id>proxy-http</id>
<active>true</active>
<protocol>http</protocol>
<host>localhost</host>
<port>3128</port>
<!-- <username>usr</username>
<password>pwd</password> -->
<nonProxyHosts>localhost|127.0.0.1</nonProxyHosts>
</proxy>
<proxy>
<id>proxy-https</id>
<active>true</active>
<protocol>https</protocol>
<host>localhost</host>
<port>3128</port>
<!-- <username>usr</username>
<password>pwd</password> -->
<nonProxyHosts>localhost|127.0.0.1</nonProxyHosts>
</proxy>
</proxies>
</settings>
Then, run these commands from shell.
npm config set proxy http://localhost:3128
npm config set https-proxy http://localhost:3128
npm config set registry "http://registry.npmjs.org/"
npm config set strict-ssl false
git config --global http.proxy http://localhost:3128
git config --global https.proxy http://localhost:3128
git config --global url."http://".insteadOf git://
Cleanup: set active false in Maven settings.xml and run these commands.
npm config rm proxy
npm config rm https-proxy
git config --global --unset http.proxy
git config --global --unset https.proxy
git config --global --unset url."http://".insteadOf
Any ideas?
I forgot to set 'active' to false in ~/.m2/settings.xml before running:
Cleanup: set active false in Maven settings.xml and run these commands.
npm config rm proxy
npm config rm https-proxy
git config --global --unset http.proxy
git config --global --unset https.proxy
git config --global --unset url."http://".insteadOf

Resources