Saya ingin menjalankan perintah shell Linux dengan Maven. Inilah yang saya coba:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.1.1</version>
<executions>
<execution>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
<configuration>
<executable>hostname</executable>
</configuration>
</plugin>
Jawaban:
Inilah yang berhasil untuk saya:
sumber
<configuration />
harus mengikuti<executions />
dan tidak ditempatkan di dalamnya. Butuh waktu cukup lama bagi saya untuk menemukan kesalahan sintaksis sederhana ini. Output kesalahan Maven benar-benar tidak membantu.<workingDirectory>${basedir}/scripts/</workingDirectory>
dalam blok konfigurasi, alih-alih memberikan jalur lengkap<executable>
juga mungkin merupakan ide yang bagusMasalahnya di sini adalah saya tidak tahu apa yang diharapkan . Dengan penyiapan Anda saat ini, mengaktifkan plugin di baris perintah hanya akan berfungsi:
Global
configuration
digunakan,hostname
perintah dijalankan (laptop
adalah nama host saya). Dengan kata lain, plugin berfungsi seperti yang diharapkan.Sekarang, jika Anda ingin plugin dijalankan sebagai bagian dari build , Anda harus mengikat tujuan pada fase tertentu. Misalnya, untuk mengikatnya pada
compile
:Lalu:
Perhatikan bahwa Anda dapat menentukan
configuration
di dalam fileexecution
.sumber
mvn exec:exec
induknya, mvn akan menjalankannya di semua project build multi-modul, termasuk induknya. Tetapi pom induk tidak memiliki konfigurasi apa pun untuk plugin yang mengharapkanexecutable
untuk didefinisikan, oleh karena itu pesan kesalahannya.configuration
bagian dalamexecution
blok, itu akan berfungsi jika dijalankan sebagai bagian dari grup (mvn install
) tetapi memunculkanspecify the following: <configuration>
kesalahan jika dijalankan secara langsung denganmvn exec:exec
.Terpecahkan. Masalahnya adalah, executable bekerja dengan cara berbeda di Linux. Jika Anda ingin menjalankan file .sh, Anda harus menuliskannya dengan cara di bawah ini. Tuliskan di pom.xml
sumber
2 Pilihan:
npm start
dengan maven, Anda dapat mencapainya dengan yang di bawah ini:mvn exec:exec -Pstart-node
Untuk itu anda membutuhkan bagian maven dibawah ini
npm install
Anda dapat melakukannya dengan:mvn install
Dan agar itu berhasil, Anda memerlukan bagian di bawah ini:
sumber
Terima kasih! Tomer Ben David. itu membantu saya. seperti yang saya lakukan pip install di folder demo seperti yang Anda sebutkan npm install
sumber