angular - 错误 :/bin/sh: java: not found with @openapitools

标签 angular dockerfile openapi openapi-generator openapi-generator-cli

我正在尝试使用这个 docker 文件运行 Angular 应用程序容器:

# stage 1
FROM node:alpine AS my-app-build
WORKDIR /app
COPY . .
RUN npm install @openapitools/openapi-generator-cli -g
RUN npm run build

# stage 2
FROM nginx:alpine
COPY --from=my-app-build /app/dist/ /usr/share/nginx/html
EXPOSE 80

我需要 openapitools 来生成我的客户端 api,但我收到此错误消息:

/usr/local/lib/node_modules/@openapitools/openapi-generator-cli/main.js:636
                error ? reject(new Error(stderr)) : resolve(stdout);
                               ^

Error: /bin/sh: java: not found

    at /usr/local/lib/node_modules/@openapitools/openapi-generator-cli/main.js:636:32
    at ChildProcess.exithandler (node:child_process:404:5)
    at ChildProcess.emit (node:events:390:28)
    at maybeClose (node:internal/child_process:1062:16)
    at Socket.<anonymous> (node:internal/child_process:448:11)
    at Socket.emit (node:events:390:28)
    at Pipe.<anonymous> (node:net:687:12)

Node.js v17.3.1
Error response from daemon: The command '/bin/sh -c npm run build' returned a non-zero code: 1

为什么我需要java? 我必须安装它吗?

最佳答案

是的,您需要安装 java,或使用另一个 openapi 生成器。

对于 Angular 项目,我使用 ng-openapi-gen .这个不需要,估计还有其他的。

关于angular - 错误 :/bin/sh: java: not found with @openapitools,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70760275/

相关文章:

javascript - Angular 2 Webpack 演示无法运行

asp.net - Docker for Windows 构建为 COPY 添加了前缀 `/var/lib/docker/tmp/`?

swagger - 在 "host"级别覆盖 "basePath"和 "/{path}"

rest - 编码不会在 swagger-ui 中爆炸 requestBody 中的属性

linux - 如何将我的本地 docker 图像导出到 tar 并在另一台计算机上加载

swagger - 为什么 OpenAPI 中有不同的组件类型?

dart - 将 TypeScript 转换为 Dart

css - 有什么方法可以告诉 angular-cli(对于 angular 2)生成缩小版的 css 吗?

c# - ASP.NET 如何报告 UploadProgress?

在生产中部署 Angular 应用程序 - 获取不同的 cli 版本