2011-08-20 60 views
5

Tôi không chắc chắn tại sao lại đưa ra lỗi này. Niềng răng có vẻ đúng. Một điều nữa là chương trình tương tự hoạt động trong Windows-nhật thực nhưng không phải trong nhật thực cho Mac. Điều gì có thể là lý do?Lỗi cú pháp trên mã thông báo "Ký tự không hợp lệ", xóa mã thông báo này

import java.util.Vector; 

public class Debug 
{ 
    private int something = 0; 
    private Vector list = new Vector(); 

    public void firstMethod() 
    { 
     thirdMethod(something); 
     something = something + 1; 
    } 
    public void secondMethod() 
    { 
     thirdMethod(something); 
     something = something + 2; 
    } 
    public void thirdMethod(int value) 
    { 
     something = something + value; 
    } 

    public static void main(String[] args) 
    { 
     Debug debug = new Debug(); 
     debug.firstMethod(); 
     debug.secondMethod(); 
    } 
} 
+0

Làm việc tốt với tôi –

+0

Số dòng nào? –

+0

@Ed Staub Line 30 – Ava

Trả lời

13

Ah, ok - đây có thể là ký tự control-Z hoặc ký tự không thể in khác ở cuối tệp bị bỏ qua trong Windows nhưng không có trên máy Mac. Bạn đã sao chép nguồn từ Windows sang Mac. Xóa vài ký tự cuối cùng và nhập lại chúng - Tôi nghĩ nó sẽ biến mất. Tôi không làm Mac, mặc dù - tôi chỉ đoán thôi.

+0

Woah nó đã hoạt động! Cảm ơn rất nhiều :) – Ava

+0

Bạn cũng có thể chuyển đổi các dấu phân cách dòng (mà tôi nghi ngờ là vấn đề thực tế) từ trình đơn Tệp. – nitind

+0

@nitind, các sự cố phân tách đường có thể được báo cáo là trên dòng qua dòng cuối cùng trong tệp không? Tôi đã có thể mong đợi để xem chúng trên dòng 1 hoặc 2. Liệu các thiết lập tương tự âm thầm làm sạch các công cụ khác quá? –

1

Tôi đã gặp sự cố tương tự khi nhập dự án của mình từ mac vào Linux Slackware. Mac OSX tạo một số tệp tạm thời có cùng tên tệp trong thư mục (._filename) trong tất cả các thư mục. Thông thường các tệp này không hiển thị trong Mac OSX, nhưng trong các hệ điều hành khác thì không. Eclipse có thể tìm thấy các tệp này và cố xử lý như các nguồn (._filename.java). Tôi đã giải quyết việc xóa các tệp này.

1

Chỉ cách tôi có thể giải quyết vấn đề này là nhấn Ctrl + A để chọn tất cả văn bản của tệp rồi Ctrl + C để sao chép chúng rồi xóa tệp và tạo lớp mới với ý tưởng intellij rồi Ctrl + P để dán văn bản vào tệp mới. điều này giải quyết vấn đề của tôi và trình biên dịch không bao giờ hiển thị lỗi sau khi làm giải pháp này.

0

Tôi gặp lỗi tương tự khi nhập một dự án mà tôi đã tạo trong máy Mac, vào Windows. Như @Massimo nói Mac tạo ra các tệp ._filename, java mà nhật thực chạy trong cửa sổ xem như tệp nguồn. Đây là nguyên nhân gây ra vấn đề.

Chúng là các tệp ẩn, bạn có thể thấy khi bạn chọn tùy chọn "Hiển thị tệp và thư mục ẩn" trong tùy chọn thư mục trong máy Windows. Việc xóa các tệp này sẽ giải quyết được sự cố.

0

Tôi nhận được thông báo này đang cố gắng gọi một subjob từ một thành phần tRunJob. Trong tRunJob tôi đã kiểm tra cả hai "truyền toàn bộ ngữ cảnh" VÀ liệt kê các tham số riêng lẻ trong các hộp tham số/giá trị. Khi tôi đã xóa các tham số bổ sung mà nó đã làm việc.

0

Có thể có các ký tự ẩn trong dòng. Nếu bạn di chuyển con trỏ qua các ký tự và con trỏ của bạn không di chuyển trong một ký tự, điều đó có nghĩa là có một ký tự không hợp lệ trong dòng. Xóa chúng và nó sẽ hoạt động. Ngoài ra, hãy thử sao chép và dán dòng vào trình chỉnh sửa hex và bạn sẽ thấy các ký tự không hợp lệ trong đó.

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