comando gradlew non trovato?


118

Sto lavorando a un progetto Java con gradlew. Uso Ubuntu Linux come sistema operativo. Quando corro "gradle" viene eseguito e mi da informazioni. Ma quando eseguo "gradlew", viene visualizzato come "Nessun comando 'gradlew' trovato, intendevi: Comando 'gradle' dal pacchetto 'gradle' (universo) gradlew: comando non trovato"

Ho fatto le mie ricerche, ho jdk e ho fatto sudo apt-get install gradle. Sono totalmente all'oscuro


51
Corri ./gradlew. Non si trova sul tuo percorso ma è un eseguibile presente nella directory principale del progetto che stai ritirando.
mkobit

2
Leggi la documentazione sul wrapper gradle , docs.gradle.org/current/userguide/gradle_wrapper.html .
ditkin

Risposte:


100

L'involucro Gradle deve essere costruito. Prova a eseguire gradle wrapper --gradle-version 2.13Ricorda di modificare 2.13 con il numero di versione gradle. Dopo aver eseguito questo comando, dovresti vedere nuovi script aggiunti alla cartella del progetto. Dovresti essere in grado di eseguire il wrapper con ./gradlew buildper creare il tuo codice. Fare riferimento a questa guida per ulteriori informazioni https://spring.io/guides/gs/gradle/ .


173

Linux / MacOS

Come notato nei commenti, solo in esecuzione

./gradlew

ha funzionato per me. L'aggiunta di ./indica di cercare nella directory corrente poiché non è nel percorso.

Windows PowerShell

.\gradlew

26
prima prova "chmod + x gradlew" e poi "./gradlew" se non funziona
Fadi

per macOS catalina, "sudo bash ./gradlew" funziona per me
daniel

52

L'esecuzione di questo comando bash funziona per me eseguendo in chmod 755 gradlewquanto a volte le proprietà del file cambiano al passaggio da un sistema operativo all'altro (Windows, Linux e Mac).


14
Sicuramente 755? Non vuoi consentire a chiunque di sovrascrivere un file eseguibile affidabile.
David Knipe

7
chmod 777 ... classico.
vilpe89

1
Si prega di non consigliare "chmod 777". Gli eseguibili non dovrebbero mai essere scrivibili in tutto il mondo.
Kelly Setzer

19

lo stesso problema si verifica anche a me ... controllo i permessi del file wrx con:
$ls -l ./gradlew-> -rw-rw-r-- (nessun permesso di esecuzione)

quindi uso il comando $chmod +x ./gradlewe questo problema è risolto.


15

Da mac,

Niente funziona tranne il seguente comando

chmod 777 gradlew Allora

./gradlew


gradlew ha bisogno dell'autorizzazione su linux / mac, funziona per me dopo chmod 777 gradlew nella root del mio progetto.
Faisal

1
'chmod 777' rende il mondo gradlew scrivibile. Questo è un grosso problema di sicurezza. Usa invece "chmod 555".
Kelly Setzer

Consiglierei chmod 755 (-rwxr-xr-x). over 777
notStan

14

Se stai usando Mac, prova a dare accesso root a gradlew facendo

chmod +x ./gradlew

10

Inoltre è @suraghch

Linux / MacOS ./gradlew clean

Windows PowerShell . \ Gradlew clean

Windows cmd gradlew pulito


5

Per gli utenti di Ubuntu (linux): fare "bash ./gradlew build"funziona ma" ./gradlew build"non funziona.

Per me il problema era che era sul file system NTFS, Linux non consente di eseguire uno script da NTFS. Prova a spostare il codice da NTFS a una partizione Linux. allora ./gradlew builddovrebbe funzionare


Funziona anche per RedHat 7
G_V

3

La prima cosa è che devi eseguire l'attività gradle che hai menzionato per questo wrapper. Es: gradle wrapperdopo aver eseguito questo comando, controlla la tua directory per i file gradlew e gradlew.bat. gradlew è il file di script della shell e può essere utilizzato in linux / Mac OS. gradlew.bat è il file batch per il sistema operativo Windows. Allora corri

./gradlew build(Linux / Mac). Funzionerà.


1

Se la risposta contrassegnata come corretta non funziona, è perché devi identificarti come super utente.

sudo gradle wrapper --gradle-version 2.13

Ha funzionato per me.


1

Se stai usando VS Code con flutter, dovresti trovarlo nella cartella dell'app, sotto la cartella Android:

C: \ MyAppFolder \ Android

Puoi eseguirlo nel terminale:

./gradlew signingReport

1

È necessario disporre del wrapper Gradle disponibile localmente prima dell'uso gradlew. Per costruirlo

gradle wrapper # --gradle-version v.xy

Facoltativamente, passare esplicitamente la versione gradle. Questo passaggio produce il binario gradlew e poi dovresti essere in grado di farlo

./gradlew build

0

Uso intellj idea e in Windows nel tipo di terminale: gradlew.bat run funziona per me.


1
Windows è diverso . Per qualche ragione, risolve sempre gli eseguibili .come se fossero nel percorso, anche quando chiaramente non è nel percorso.
Guss

0

Ciao @ Hayden Stites, ho affrontato lo stesso problema, ma dopo alcuni tentativi ho scoperto che stava accadendo perché stavo cercando di creare build in git bash, invece di CMD con accesso amministratore. Se crei build con il prompt dei comandi, esegui come build dell'amministratore verrà creato.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.