2015-04-20 13 views
8

Tôi đang cố gắng để chạy grails list-profiles, nhưng nhận được lỗi sau:"Lỗi xảy ra chạy Grails CLI: null" khi chạy grails dòng lệnh 3,0

[email protected]:~/repos$ grails list-profiles --stacktrace 
| Error Error occurred running Grails CLI: null (NOTE: Stack trace has been filtered. Use --verbose to see entire trace.) 
java.lang.NullPointerException 
    at org.grails.cli.profile.git.GitProfileRepository.getAllProfiles(GitProfileRepository.groovy:72) 
    at org.grails.cli.profile.commands.ListProfilesCommand.handle(ListProfilesCommand.groovy:43) 
    at org.grails.cli.GrailsCli.execute(GrailsCli.groovy:173) 
    at org.grails.cli.GrailsCli.main(GrailsCli.groovy:99) 
| Error Error occurred running Grails CLI: null 

phiên bản của tôi là:

[email protected]:~/repos$ grails --version 
| Grails Version: 3.0.1 
| Groovy Version: 2.4.3 
| JVM Version: 1.7.0_75 

Đây là một cài đặt mới của grails và gvm.

Lệnh grails create-app myapp hoạt động mà không có lỗi.

Câu hỏi này tương tự như Grails 3.0 error, nullpointer, tuy nhiên, câu hỏi đó không nêu rõ lệnh nào đang được chạy.

+0

Tôi có lỗi này khi sử dụng openjdk- 9 trên Ubuntu 14. Khi trở lại openjdk-8 nó đã sửa lỗi này cho tôi. – Guus

Trả lời

5

Sau khi tìm kiếm trên mạng, tôi thấy rằng tôi cần thiết để thiết lập biến môi trường GRAILS_OPTS của tôi như sau trước khi chạy lệnh:

export GRAILS_OPTS="-XX:-UseSplitVerifier -Xverify:none" 

Nguồn sửa chữa: https://grails.org/news/1292028

+1

và kết quả tìm kiếm này cũng giải thích tại sao? – cfrick

+0

Tôi đã thêm nguồn gốc của bản sửa lỗi vào câu trả lời. Một bài đăng ám chỉ vấn đề là lỗi jvm. –

+0

Cảnh báo Java HotSpot (TM) 64-Bit Server VM: bỏ qua tùy chọn UseSplitVerifier -Xverify: none; hỗ trợ đã bị xóa trong 8.0 | –

2

tôi đã không tìm ra, những gì là nguyên nhân chính xác của lỗi, nhưng nó dường như xảy ra nếu bạn cố gắng chạy grails 3 trong hệ thống nơi grails 2 cũng được cài đặt.

Tôi đã làm gì để chạy lệnh - Tôi đã tạo dự án trong một thư mục mới. Thư mục cho ứng dụng grails cũ của tôi là: /home/me/dự án/oldgrailsapp

khi tôi đã cố gắng để thực hiện grails lệnh trong /home/me/dự án nó thất bại, nhưng khi tôi đã cố gắng này trong một thư mục khác/home/me/projects_new, nó đã thành công. Vì vậy, tôi đoán rằng vấn đề là cấu hình cũ của grails là bằng cách nào đó can thiệp vào cái mới.

Tôi cũng đã xóa tham chiếu đến phiên bản grails và groovy cũ khỏi biến PATH bằng cách chỉnh sửa .bashrc tệp trong thư mục chính của tôi (Tôi thực sự không biết nếu cần).

1

Nó đã làm việc cho tôi ngay bây giờ. này là thiết lập của tôi

GRAILS_HOME = C: \ Users \ murali.solayappan \ apps \ grails-3.1.11

JAVA_HOME = C: \ Program Files \ Java \ jdk1.8.0_102

tôi nhận được lỗi tương tự khi tung ra "grails" cho lần đầu tiên

**Error occurred running Grails CLI: connect timed out** 

Sau khi đọc GRAILS_HOME \ bin \ grails.bat tôi phát hiện ra rằng thực hiện "grails" trong khi ở GRAILS_HOME dir làm cho một số sự khác biệt. Vì vậy, tôi đã làm như vậy

Bây giờ tôi đã nhận được lỗi nói rằng GRAILS không thể tìm thấy gói maven cụ thể từ kho lưu trữ bản sao của tôi - đã in url kho lưu trữ nexus riêng của tôi. Tôi biết đó là repo riêng của tôi và không kết nối với internet.

vì vậy tôi đã thay đổi MY_HOME_DIR.m2 \ "settings.xml" bằng mặc định trong Maven.

Sau khi thực thi "grails" trong khi ở% GRAILS_HOME% dir.

Nó hoạt động như khoe! Tôi nhận được dấu nhắc của grails.

C: \ Users \ murali.solayappan \ apps> grails

| Nhập tên lệnh để chạy. Sử dụng TAB để hoàn thành:

grails> thoát

1

tôi đã cùng trải nghiệm khi tôi đang làm việc trên "Building an Andoird Client" hướng dẫn, tôi đã nhận được thông báo sau bất cứ khi nào tôi cố gắng tạo ra một ứng dụng trong cùng một thư mục nơi tôi Vì vậy, rõ ràng, khi bạn tạo một ứng dụng grails trong thư mục chứa thư mục "grails-app", grails sẽ coi thư mục này là ứng dụng grails đầy đủ, do đó không thể tạo ứng dụng trong thư mục đó. Tôi đã sử dụng: Grails 3.1.15 Java 1.8.0.101 Hy vọng trợ giúp này.

0

Somethimes nó sẽ xảy ra khi bạn có phiên bản sai của grails cài đặt cho các dự án bạn muốn chạy nó trên cố gắng chạy nó ở một nơi khác và xem nếu bạn nhận được lỗi tương tự

Các vấn đề liên quan