0
0

More than 1 year has passed since last update.

Amplifyのビルド時に表示されたエラー

Posted at

はじめに

フロントエンドの勉強をしていて、作成したWebサイトをAmplifyでホスティングすることにしました。
その中でAmplifyのビルド時にエラーが表示されたため、その内容を記載します。

ビルドの設定

Amplifyのビルドの設定として、最初は下記の設定をしていました。

amplify.yml
version: 1
frontend:
  phases:
    preBuild:
      commands:
        - nvm install v12.16.2
        - nvm use v12.16.2
        - npm install -g yarn
        - yarn install
        - node -v
    build:
      commands:
        - yarn run build

  artifacts:
    baseDirectory: dist/
    files:
      - '**/*'
  cache:
    paths:
      - node_modules/**/*

エラー文

上記の設定にてビルドしたところ、下記のエラーが表示されました。

2022-XX-XXTXX:XX:XX.XXXZ [INFO]: yarn install v1.22.19
2022-XX-XXTXX:XX:XX.XXXZ [INFO]: [1/4] Resolving packages...
2022-XX-XXTXX:XX:XX.XXXZ [INFO]: [2/4] Fetching packages...
2022-XX-XXTXX:XX:XX.XXXZ [WARNING]: error vuetify@3.0.0-beta.10: The engine "node" is incompatible with this module. Expected version "^12.20 || >=14.13". Got "12.16.2"
2022-XX-XXTXX:XX:XX.XXXZ [WARNING]: error Found incompatible module.
2022-XX-XXTXX:XX:XX.XXXZ [INFO]: info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
2022-XX-XXTXX:XX:XX.XXXZ [ERROR]: !!! Build failed
2022-XX-XXTXX:XX:XX.XXXZ [ERROR]: !!! Non-Zero Exit Code detected

原因

指定していたNode.jsのバージョンと互換性がないことが原因でした。

対処方法

まずは、Amplify上で動作しているNode.jsのバージョンを確認することにしました。
ビルド設定のpreBuildの先頭に「node -v」を追加して確認したところ、「v14.19.0」と表示されました。
ビルド設定の「v12.16.2」部分を「v14.19.0」と変更することで、無事にビルドすることができました。

ビルド設定

最終的なAmplifyのビルドの設定は、下記の通りです。

amplify.yml
version: 1
frontend:
  phases:
    preBuild:
      commands:
        - nvm install v14.19.0
        - nvm use v14.19.0
        - npm install -g yarn
        - yarn install
        - node -v
    build:
      commands:
        - yarn run build

  artifacts:
    baseDirectory: dist/
    files:
      - '**/*'
  cache:
    paths:
      - node_modules/**/*
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0