วิธีเปลี่ยน grails localhost port?


91

ฉันใช้ grails 2.0.4 และฉันต้องการใช้พอร์ต: 8090 แทน 8080 สำหรับ localhost ดังนั้นต้องการความช่วยเหลือในการเปลี่ยนพอร์ตเป็น 8090 อย่างถาวร

คำตอบ:


111

มีสองทางเลือก:

  1. เปลี่ยนgrails.serverURLในConfig.groovyจากไป "http://localhost:8080/${appName}""http://localhost:8090/${appName}"
  2. เปิดตัว grails ด้วย-Dgrails.server.port.http=8090บรรทัดคำสั่ง ตั้งค่าGRAILS_OPTSตัวแปรสภาพแวดล้อมเพื่อ-Dgrails.server.port.http=8090ให้ใช้โดยอัตโนมัติ

24
จากบรรทัดคำสั่งคุณสามารถใช้ -Dserver.port = 8090
AndrewW

2
สำหรับ grails 3 คุณสามารถใช้ได้เฉพาะ -Dserver.port = 8090
demon101

125

การแก้ปัญหานี้จะเพิ่มการตอบhttp://stackoverflow.com/a/10956283/122457 ใน Grails 2.x ให้เพิ่มสิ่งต่อไปนี้ในBuildConfig.groovy:

grails.server.port.http = 8090

ดูรายละเอียดเพิ่มเติมได้ที่http://forum.springsource.org/archive/index.php/t-97024.html


นี่คือทางออกที่ดีกว่า มีชิ้นส่วนที่เคลื่อนไหวน้อย
chubbsondubs

ฉันลองวิธีนี้แล้วไม่ได้ผลมีส่วนเฉพาะที่ควรวางไว้หรือไม่? ฉันติดมันไว้ใต้grails.project.target.levelส่วนและดูเหมือนว่าจะไม่มีผลใด ๆ
Ted Delezene

@TedDelezene นี้ไม่ได้อยู่ภายใต้ส่วนอื่นใด คุณรีสตาร์ทแอปพลิเคชันหลังจากเปลี่ยนการกำหนดค่าหรือไม่? - เพราะสิ่งเดียวที่จะโหลดการกำหนดค่าซ้ำ (และการเปลี่ยนแปลงของคุณ)
HumanInDisguise

ใช่ฉันทำและมันไม่ได้ผลสำหรับฉัน แต่ตอนนี้ฉันเพิ่งเริ่มด้วยตัวเลือก -Dserver.grails.port.http = 49494
Ted Delezene

36

หากคุณใช้ Netbeans IDE ให้ตั้งค่าต่อไปนี้ -:

Config: -> BuildConfig.groovy: -> grails.server.port.http = 8090 และรีสตาร์ทเซิร์ฟเวอร์

หากไม่มี IDE ให้พิมพ์พรอมต์คำสั่ง -:

grails -Dserver.port 8090 run-app

หรือ

grails -Dserver.port=8090 run-app

1
ให้ข้อมูลมากและบอกทุกวิธีในการทำสิ่งนี้ ขอบคุณ gautam
Chetan

@Gautam ไม่มีฟิลด์เช่น grails.server.port.http ใน BuildConfig ของฉันดังนั้นฉันจึงเพิ่มมันด้วยตนเองและลอง แต่มันให้การตอบสนองเหมือน 8080 ในการใช้งาน (ฉันใช้มันเพื่อปรับใช้โดยใช้ tomcat) สิ่งที่อาจเป็นปัญหาที่ฉันทำ ฉันใส่ grails.server.port.http = 8090 ที่จุดเริ่มต้นของ BuildConfig
padippist

พยายามฆ่าพอร์ต 80 ทั้งหมดแล้วลอง สำหรับ linux ให้ใช้ '' sudo fuser -n tcp -k 80 '' หรือ 'lsof -t -i: 8080' ในเทอร์มินัล
Gautam


6

บรรทัดคำสั่ง: grails run-app -port 8090


สิ่งนี้ไม่ได้ผลสำหรับฉันยังคงเริ่มใน 8080 แปลกมาก
John Little

สิ่งนี้แก้ไขให้ฉันใน IntelliJ IDEA 2017.1.1
djmdata

6

เรียกใช้คำสั่ง (Ctrl + Alt + g)

  1. ถึง grails เวอร์ชัน 2.x: run-app -Dserver.port=8090
  2. สำหรับ grails เวอร์ชัน 3.x: run-app --port=8090

5

หากคุณใช้ IntelliJ IDE แล้ว

จากเมนูแอปพลิเคชันคลิก Run >> Edit Configurations ... >> VM options: -Dgrails.server.port.http = 8180


5

เกรลส์รันแอพ -Dserver.port = 8090

หรือใช้หมายเลขพอร์ตอื่น

ใน Intellij: Ctrl + Alt + G (คีย์บอร์ดทั่วไป); Cmd + Alt + G (แป้นพิมพ์ Mac) และใช้เฉพาะ:

รันแอพ -Dserver.port = 8090


2
สิ่งนี้ไม่ได้ผลสำหรับฉันเช่นกันยังคงเริ่มใน 8080
John Little

คุณมี Grails รุ่นใด
Samuel Ivan

เหมือนกันที่นี่มันไม่ได้ผลสำหรับฉัน ฉันใช้ grails 1.3.7 ที่ทำงานบน Mac OS 13.12.3 ฉันคิดว่ามันไม่ใช่ปัญหาเฉพาะระบบปฏิบัติการ
Umesh Chauhan

ตรวจสอบคำแนะนำในหัวข้อ 2.7 การรัน Application ... docs.grails.org/1.3.7/guide/single.html คุณสามารถระบุพอร์ตอื่นโดยใช้อาร์กิวเมนต์ server.port: grails -Dserver.port = 8090 run-app
Samuel Ivan

0

คุณไม่ได้บอกว่าคุณใช้ IDE อะไร หากคุณใช้ Netbeans คุณเพียงคลิกขวาที่ชื่อโครงการและเลือก Properties จากหมวดการตั้งค่าทั่วไปคุณสามารถเปลี่ยนพอร์ตเซิร์ฟเวอร์เป็นอะไรก็ได้ที่คุณต้องการ


0

คุณสามารถเรียกใช้แอป grails โดยใช้คำสั่งต่อไปนี้บนเทอร์มินัล พอร์ตการทำงานเริ่มต้นคือ 8080

grails run-app -Dserver.port = 9090

สิ่งนี้จะเรียกใช้แอปบนพอร์ต 9090


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.