gen đã tồn tại nhưng không phải là một thư mục nguồn


91

Tôi đang phát triển dự án Android của mình, Sau khi xóa một thư viện không sử dụng, tôi gặp lỗi:

myproject/gen already exists but is not a source folder. Convert to a source folder or rename it

Trong mã Hoạt động của tôi, R.javakhông thể giải quyết tất cả tài nguyên từ .

Tôi đã thử, nhấp chuột phải vào dự án của mình => Đường dẫn xây dựng Java => trong tab "Nguồn", tôi đã thêm gen / làm nguồn. Nhưng nó không giúp giải quyết vấn đề ...

Tại sao, làm thế nào để thoát khỏi vấn đề này?

---- CẬP NHẬT ----

Tôi thấy rằng, nhật thực cũng phàn nàn rằng "Dự án không có tệp project.properties! Hãy chỉnh sửa các thuộc tính của dự án để thiết lập một." , nhưng tôi có tệp project.properties trong dự án của mình. Tại sao nó phàn nàn? Tôi đã làm sạch dự án và "sửa chữa thuộc tính dự án" nhưng nó không giúp ích gì.


5
kiểm tra thư mục src của bạn có chứa bất kỳ thư mục gen nào không. nếu có xóa nó. .không cần tạo nó một cách thủ công. Làm sạch dự án của bạn một lần.
Padma Kumar

hi, thư mục src của tôi không chứa bất kỳ thư mục gen ...
Leem.fin

1
Đã xảy ra với tôi sau khi nhập một dự án
max.mustermann

1
Bạn có một câu trả lời rất hay, hiện được xếp hạng 79, nhưng bạn vẫn chưa chấp nhận nó. Bạn nên chấp nhận nó. Và "CẬP NHẬT" của bạn phải là một câu hỏi riêng biệt (và bạn có thể muốn xem liệu ai đó đã trả lời nó chưa).
steveha

Tôi nghĩ câu trả lời của tôi sẽ giúp ích cho vấn đề này .. stackoverflow.com/questions/9738203/…
Ranjit

Câu trả lời:


234

Tôi có một vấn đề tương tự.

Hai hành động, thứ nhất:

    1. nhấp chuột phải vào dự án và đi đến "Thuộc tính"
    2. chọn "Đường dẫn xây dựng Java" ở bên trái
    3.Mở tab "Nguồn"
    4. nhấp vào "Thêm thư mục ..." và kiểm tra "gen" và "src"

thứ hai: (vì hành động trước đó yêu cầu tôi xóa thứ gì đó ... Tôi không nhớ nó là gì ...)

    1. Nhấp chuột phải vào dự án và đi đến "Thuộc tính"
    2. Chọn "Đường dẫn xây dựng Java" ở bên trái
    3. Mở "tab" Thư viện
    4. Thêm JAR bên ngoài. Thêm API Google có trong thư mục android của bạn (android-sdk \ platform \ android-yourversion

Và bây giờ nó hoạt động cho tôi!


10
Trong trường hợp của tôi, tôi chỉ cần thực hiện phần đầu tiên được đề cập ở trên. Cảm ơn bạn!
tm_forthefuture 24/09/13

Giải pháp đầu tiên cũng giúp tôi trong lần thử đầu tiên :)
Saad Qureshi

2
Làm việc ... nhưng điều này xảy ra như thế nào? Android ngu ngốc. :-)
Ryan Detzel

Bước đầu tiên làm việc cho tôi. Bạn không chắc chắn như thế nào hay tại sao Eclipse quyết định chỉ cần thả các thư mục này (classpath dường như không thay đổi) ...
ssawchenko

Chúc mừng .. Hoạt động tốt :)
vjamit

37

Giải pháp :

Bước 1 :

  • Nhấp chuột phải vào dự án và đi đến "Thuộc tính"
  • Chọn "Đường dẫn xây dựng Java"
  • Chuyển sang tab "Nguồn" Xóa tất cả các nguồn khỏi thư mục nguồn trên Đường dẫn xây dựng
  • Khởi động lại Eclipse

Bước 2 :

  • Nhấp chuột phải vào dự án và đi đến "Thuộc tính"
  • Chọn "Đường dẫn xây dựng Java"
  • Chuyển sang tab "Nguồn"
  • Nhấp vào "Thêm thư mục ..." và kiểm tra thư mục nguồn "gen" và "src" trên Đường dẫn xây dựng
  • Khởi động lại Eclipse

Sau cùng

Xây dựng (các) dự án

Chúc mừng Coder :)


1
kiểm tra gen chỉ giải quyết vấn đề và không làm việc với thư mục src
Manikandan

Tôi sẽ lãng phí ngày của mình. Cảm ơn bạn
Prakash

17
  1. Nhấp chuột phải vào dự án và đi tới Thuộc tính
  2. Chọn Đường dẫn xây dựng Java ở bên trái
  3. Tab nguồn mở
  4. Nhấp vào Thêm thư mục ... và kiểm tra gensrc

Đó là câu trả lời tốt nhất. Cô đọng, vấn đề đã được giải quyết, bùng nổ!
Ely

8

Điều này là do sử dụng sai trình nhập trong Eclipse. Nếu bạn có các dự án Android, bạn cần nhập chúng vào không gian làm việc của mình bằng Android-> Mã Android hiện tại , không phải Chung-> Dự án hiện có .

nhập mô tả hình ảnh ở đây


3

tôi đã phải xóa toàn bộ thư mục gen trong eclipse không phải từ trình khám phá tệp. sau đó đã làm sạch và nó đã được xây dựng lại. buồn cười là điều này xảy ra ngay sau khi tôi chạy báo cáo Lint HTML.


Điều này cũng làm việc cho tôi. Chỉ cần xóa tệp gen, và một vài giây sau đó được tạo lại và mọi thứ trở lại bình thường.
Sandy

2

Thư mục gen là nơi ADT tạo tệp R.java, tệp này chỉ định các định nghĩa tài nguyên của bạn. tức là tài nguyên của bạn (màu sắc, kích thước, bố cục, v.v.) được chuyển đổi thành mã và được đặt trong R.java trong thư mục gen.

Vì vậy, khi bạn xây dựng ứng dụng, bạn cần đảm bảo thư mục gen được IDE của bạn coi là thư mục mã nguồn, vì nó chứa lớp R.

Trong IDE của mình, bạn cần đánh dấu thư mục gen là thư mục nguồn, để nội dung của nó được xây dựng cùng với nguồn của bạn.

Tỷ lệ chấp nhận của bạn là rất thấp. Nếu bạn muốn mọi người giúp đỡ bạn, bạn cần một tỷ lệ chấp nhận cao.


9
nhưng làm thế nào tôi có thể chấp nhận nếu không có câu trả lời chính xác? Tôi kiểm tra các câu trả lời, nhưng không có ai là giải pháp ... Ví dụ: bài đăng hiện tại của tôi, tôi biết gen / và cách nó hoạt động trong Android, tôi đang tìm kiếm giải pháp cho vấn đề hiện tại của mình. Nhưng chưa có một.
Leem.fin

1

Tôi đã gặp vấn đề tương tự, đã giải quyết nó như sau:

Trong Package Explorer, nhấp chuột phải vào thư mục gen, tìm "Đường dẫn Xây dựng - Sử dụng làm Thư mục Nguồn" và nhấp vào nó.

Đó là nó. Tôi mong nó sẽ có ích.


1

Tôi đã cấu hình SVN cho một dự án với cùng một vấn đề, đã xóa tất cả các thư mục và tệp, lấy lại nó từ SVN và vẫn không may mắn. Điều duy nhất đã giúp là hoàn nguyên các thay đổi và xóa / nhập lại các dự án vào không gian làm việc. Hi vọng điêu nay co ich


0

Lần gần đây nhất tôi gặp sự cố này là do tôi chuyển nguồn sang nhánh khác ở hậu trường. Sau khi tôi đóng Eclipse và khởi chạy lại, sự cố đã biến mất.


0

Tôi có một số triệu chứng giống nhau , nhưng giải quyết nó theo cách khác:

Tôi phát hiện ra rằng tôi có hai tệp trong dir có thể kéo được xung đột: icon.png và icon.xcf. Điều này làm cho R không tạo ra được. Tôi đã di chuyển icon.xcf ra ngoài và R được tạo và dự án được biên dịch.


0

Chuyển đến thuộc tính dự án, sau đó đi đến Java Build Path sau đó Loại bỏ thư mục đã tồn tại, sau đó nhấp vào Thêm thư mục rồi Thêm thư mục Nguồn và gen. sau đó nhấn OK ............ Nó sẽ hoạt động .......


0

Giải pháp của tôi là dán phần sau vào tệp .classpath:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
    <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="src" path="gen"/>
    <classpathentry kind="output" path="bin/classes"/>
</classpath>

0

Chúng tôi cũng cần kiểm tra các câu lệnh nhập của mình, Nếu chúng tôi đã nhập 'android.R' thì phải xóa điều đó.


0

Điều này xảy ra vì tệp .classpath của bạn đã bị xóa bằng cách nào đó. Tệp này chứa tất cả thông tin từ tab Đường dẫn Xây dựng Java trong Thuộc tính Dự án. Bạn có thể thêm tất cả thông tin theo cách thủ công nhưng có một cách dễ dàng hơn để khắc phục sự cố này.

Nếu bạn có một bản sao của tệp .classpath trên máy của mình, bạn có thể chỉ cần sao chép và dán nó vào thư mục dự án của mình.


0

Tôi đã thử các đề xuất được đưa ra ở đây và vẫn gặp sự cố. Cuối cùng, hóa ra là Eclipse đã nhập sai. Vì lý do nào đó, nó đã thêm các từ "gen" và "src" vào đầu dòng nhập. Tôi đã phải thay đổi tất cả các dòng nhập từ

import gen.org.qtproject.qt5.android.bindings.QtApplication;

đến

import org.qtproject.qt5.android.bindings.QtApplication;

Một khi tôi đã làm điều đó, mọi thứ trở lại bình thường.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.