Skip to content

Cannot convert name to ASCII #1199

@marvinhagemeister

Description

@marvinhagemeister

I'm hit by an issue where node-gyp fails when rebuilding java bindings. Tried various different versions of node-gyp, but the issue remains. Strangely it only fails inside the official node-docker images. Locally on my Macbook

Node: 7.10.0 (official docker image)

error /opt/app/node_modules/java: Command failed.
Exit code: 7
Command: sh
Arguments: -c node-gyp rebuild
Directory: /opt/app/node_modules/java
Output:
gyp info it worked if it ends with ok
gyp info using node-gyp@3.6.1
gyp info using node@7.10.0 | linux | x64
gyp ERR! UNCAUGHT EXCEPTION 
gyp ERR! stack Error: Cannot convert name to ASCII
gyp ERR! stack     at Url.parse (url.js:317:23)
gyp ERR! stack     at urlParse (url.js:75:5)
gyp ERR! stack     at Object.urlResolve [as resolve] (url.js:642:10)
gyp ERR! stack     at processRelease (/usr/local/lib/node_modules/node-gyp/lib/process-release.js:86:19)
gyp ERR! stack     at configure (/usr/local/lib/node_modules/node-gyp/lib/configure.js:37:17)
gyp ERR! stack     at Object.self.commands.(anonymous function) [as configure] (/usr/local/lib/node_modules/node-gyp/lib/node-gyp.js:55:37)
gyp ERR! stack     at run (/usr/local/lib/node_modules/node-gyp/bin/node-gyp.js:87:30)
gyp ERR! stack     at _combinedTickCallback (internal/process/next_tick.js:73:7)
gyp ERR! stack     at process._tickCallback (internal/process/next_tick.js:104:9)
gyp ERR! System Linux 4.9.21-moby
gyp ERR! command "/usr/local/bin/node" "/usr/local/bin/node-gyp" "rebuild"
gyp ERR! cwd /opt/app/node_modules/java
gyp ERR! node -v v7.10.0
gyp ERR! node-gyp -v v3.6.1
gyp ERR! This is a bug in `node-gyp`.
gyp ERR! Try to update node-gyp and file an Issue if it does not help:
gyp ERR!     <https://github.com/nodejs/node-gyp/issues>

Minimal package.json:

{
  "name": "npm-gyp-bug",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "dependencies": {
    "java": "0.8.0"
  }
}

Dockerfile:

FROM node:7.10.0
RUN apt-get update

# Java Version
ENV JAVA_VERSION_MAJOR 8
ENV JAVA_VERSION_MINOR 45
ENV JAVA_VERSION_BUILD 14
ENV JAVA_PACKAGE       jdk

# Download and unarchive Java
RUN curl -jksSLH "Cookie: oraclelicense=accept-securebackup-cookie"\
  http://download.oracle.com/otn-pub/java/jdk/${JAVA_VERSION_MAJOR}u${JAVA_VERSION_MINOR}-b${JAVA_VERSION_BUILD}/${JAVA_PACKAGE}-${JAVA_VERSION_MAJOR}u${JAVA_VERSION_MINOR}-linux-x64.tar.gz \
    | tar -xzf - -C /opt &&\
    ln -s /opt/jdk1.${JAVA_VERSION_MAJOR}.0_${JAVA_VERSION_MINOR} /opt/jdk &&\
    rm -rf /opt/jdk/*src.zip \
           /opt/jdk/lib/missioncontrol \
           /opt/jdk/lib/visualvm \
           /opt/jdk/lib/*javafx* \
           /opt/jdk/jre/lib/plugin.jar \
           /opt/jdk/jre/lib/ext/jfxrt.jar \
           /opt/jdk/jre/bin/javaws \
           /opt/jdk/jre/lib/javaws.jar \
           /opt/jdk/jre/lib/desktop \
           /opt/jdk/jre/plugin \
           /opt/jdk/jre/lib/deploy* \
           /opt/jdk/jre/lib/*javafx* \
           /opt/jdk/jre/lib/*jfx* \
           /opt/jdk/jre/lib/amd64/libdecora_sse.so \
           /opt/jdk/jre/lib/amd64/libprism_*.so \
           /opt/jdk/jre/lib/amd64/libfxplugins.so \
           /opt/jdk/jre/lib/amd64/libglass.so \
           /opt/jdk/jre/lib/amd64/libgstreamer-lite.so \
           /opt/jdk/jre/lib/amd64/libjavafx*.so \
           /opt/jdk/jre/lib/amd64/libjfx*.so

# Prepare java
RUN npm i -g node-gyp

# Set environment
ENV JAVA_HOME /opt/jdk
ENV PATH ${PATH}:${JAVA_HOME}/bin

RUN mkdir -p /opt/app
WORKDIR /opt/app
COPY . /opt/app

# Yarn fails with the full-icu package
RUN npm i full-icu
ENV NODE_ICU_DATA node_modules/full-icu

RUN yarn && yarn build

EXPOSE 8080

CMD ["node", "/opt/app/index.js"]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions