Quando você seleciona a opção de Usar Buildpacks para configurar a imagem do contêiner, se você não especificar uma versão no código do seu aplicativo, o Buildpack usará a versão mais recente disponível. Se você deseja usar uma versão de linguagem diferente para o seu aplicativo, você precisará definir a versão nos arquivos do seu aplicativo.

O método para definir a versão varia de acordo com o idioma. Abaixo nós incluímos exemplos para os idiomas suportados atualmente.

Go

Para especificar sua versão Go, inclua o seguinte no arquivo go.mod do seu aplicativo:

// +heroku goVersion go1.11
go 1.21.1

Java

Para especificar sua versão Java, inclua o seguinte no arquivo system.properties do seu aplicativo:

java.runtime.version=11

Node.js

Para especificar sua versão Node.js e npm, inclua o seguinte no arquivo package.json do seu aplicativo:

"engines": {
  "node": "^16.14.0",
  "npm": "^8.3.1"
}

React

Se você está usando o React e deseja especificar sua versão do React, substitua ou adicione a versão do React nas dependencies do seu arquivo package.json:

"react": "^17.0.2"

Para também definir as versões do Node.js e npm em seu aplicativo React, inclua o seguinte no arquivo package.json do seu aplicativo:

"engines": {
  "node": "^16.14.0",
  "npm": "^8.3.1"
}

PHP

Para especificar a versão do PHP, inclua o seguinte no arquivo composer.json do seu aplicativo:

{
  "require": {
    "php": "~8.1.0"
  }
}

Python

Para especificar sua versão Python, inclua o seguinte no arquivo runtime.txt do seu aplicativo:

python-3.10.13

Você também pode especificar as versões dos módulos dentro do arquivo requirements.txt:

Django==4.1
virtualenv==20.18.0

Ruby

Para especificar sua versão Ruby, inclua o seguinte em seu arquivo Gemfile:

ruby "3.0.6"

Scala

Para especificar sua versão Scala, inclua o seguinte no arquivo build.sbt do seu aplicativo:

scalaVersion := "3.2.2"

Documentação relacionada