ทำไม "ไม่พบโครงการที่จะนำเข้า"


100

ฉันกำลังพยายาม "นำเข้าโครงการที่มีอยู่ไปยังพื้นที่ทำงาน" ในฐานะ "ไดเรกทอรีราก" ฉันเลือกไดเร็กทอรีที่มีไฟล์. java (และ. class) ทั้งหมดของฉัน Eclipse เขียนว่า "ไม่พบโครงการที่จะนำเข้า" ทำไม?

คำตอบ:


113

คราสที่กำลังมองหาโครงการคราสความหมายของมันคือการค้นหาไฟล์คราสเฉพาะในไดเรกทอรีรากคือและ.project .classpathคุณให้ Eclipse เป็นไดเร็กทอรีที่ไม่ถูกต้อง (หากคุณกำลังอิมพอร์ตโปรเจ็กต์ eclipse) หรือคุณต้องการสร้างโปรเจ็กต์ใหม่จากซอร์สที่มีอยู่ ( new-> java project->create project from existing source )

ฉันคิดว่าคุณอาจต้องการอันที่สองเนื่องจากโปรเจ็กต์ Eclipse มักจะมีไดเร็กทอรีซอร์สและบิลด์แยกต่างหาก หากซอร์สและไฟล์. class ของคุณอยู่ในไดเร็กทอรีเดียวกันคุณอาจไม่มีโปรเจ็กต์ eclipse


1
ฉันคิดว่าคุณถูก. ฉันได้ลบไฟล์ ".project" และ ".classpath" ออกจากไดเร็กทอรีแล้วฉันก็ได้รับปัญหาที่อธิบายไว้ แต่ฉันเพิ่งพยายาม "สร้างโครงการจากแหล่งที่มาที่มีอยู่" ดูเหมือนว่าจะได้ผล แต่ฉันยังไม่มีไฟล์ ".project" และ ".classpath" ในไดเร็กทอรี ดังนั้น eclipse จึงสร้างโปรเจ็กต์ แต่ไม่ได้สร้างไฟล์ที่เกี่ยวข้องกับโปรเจ็กต์ คุณรู้ไหมว่าทำไม?
โรมัน

1
ตรวจสอบโฟลเดอร์พื้นที่ทำงานของคุณ ฉันเชื่อว่าควรมีโฟลเดอร์ที่มีชื่อโปรเจ็กต์ของคุณและสองไฟล์อยู่ในนั้น หนึ่งในนั้นอาจมีเส้นทางไปยังชั้นเรียนจริงของคุณ
laura

8
ไม่มีสิ่งที่เรียกว่าสร้างโครงการจากแหล่งที่มีอยู่ .... ฉันมองไม่เห็น ....... เมื่อคุณกดใหม่ -> โครงการ java ......... จากนั้นไม่มีตัวเลือกเพิ่มเติม คุณเพิ่งได้รับกล่องโต้ตอบสำหรับการเพิ่มโครงการใหม่
Saher Ahwal

11
การแก้ไข: อ็อพชัน "สร้างโปรเจ็กต์จากซอร์สที่มีอยู่" นี้จะไม่ออกในเวอร์ชันคราสใหม่ ดูคำตอบของฉันด้านล่างในกรณีที่คุณมีคราสใหม่
Saher Ahwal

184

คำตอบนี้เหมือนกับคำตอบของลอร่าอย่างไรก็ตามในเวอร์ชันคราสใหม่คุณจะไม่เห็นตัวเลือก "สร้างโปรเจ็กต์จากแหล่งที่มาที่มีอยู่"

ดังนั้นคุณสามารถทำสิ่งนี้แทน:

  • ไปที่ไฟล์ > ใหม่ > โครงการ

  • เลือกประเภทของโครงการคลิกถัดไป

  • ยกเลิกการเลือกใช้ตำแหน่งเริ่มต้น

  • คลิกที่เรียกดูเพื่อนำทางไปยังโฟลเดอร์ต้นทางของคุณหรือพิมพ์เส้นทางไปยังแหล่งที่มาของคุณ

  • คลิกเสร็จสิ้น

นำมาจากฟอรัมสนทนานี้ใน eclipse.org


48
+1. ฉันใช้เวลา 20 นาทีในการค้นหาตัวเลือก "สร้างโครงการจากแหล่งที่มาที่มีอยู่"
xyz

2
ใน Android เวอร์ชันใหม่กว่า ... จากเมนูให้เลือก: File-> New-> Project (ไม่ใช่ Android Project หรือ Java Project) จากนั้นภายใต้ Wizards เลือก: Android-> โครงการ Android จากรหัสที่มีอยู่
paiego

หากคุณไม่มี Android Project เป็นตัวเลือกอย่างที่ @paiego แนะนำคุณยังสามารถใช้ New JavaScript Project ได้
Snekse

6
นี่ควรเป็นคำตอบที่ได้รับการยอมรับ
Cumulo Nimbus

ไม่ได้ผลสำหรับฉัน มันแสดงว่า '<projectname> ซ้อนทับตำแหน่งของโปรเจ็กต์อื่น: <projectname>' ใช้ Eclipse luna (4.4.0)
Shubham A.

23

วิธีแก้ปัญหาอย่างหนึ่งคือการใช้ Maven จากโฟลเดอร์รูทโปรเจ็กต์ทำ mvn eclipse: clean ตามด้วย mvn eclipse: eclipse สิ่งนี้จะสร้างไฟล์. project และ. classpath ที่ eclipse ต้องการ


นั่นคือสิ่งที่ฉันต้องการฟัง ... "คลิก"
ทำงาน

นี่คือสิ่งที่ฉันกำลังมองหา ช่วยฉันจริงๆ ขอบคุณ @PaulF!
kev

14

ในคราสที่อัปเดตใหม่create project from existing sourceจะพบตัวเลือก " " ที่นี่ File>New>Project>Android>Androidโครงการจากรหัสที่มีอยู่ จากนั้นเรียกดูไดเรกทอรีราก

ป้อนคำอธิบายภาพที่นี่


11

ฉันมีทางออกที่สมบูรณ์แบบสำหรับปัญหานี้ หลังจากทำตามขั้นตอนง่ายๆแล้วคุณจะสามารถอิมพอร์ตซอร์สโค้ดของคุณใน Eclipse!


ครั้งแรกของทุกเหตุผลทำไมคุณไม่สามารถนำเข้าโครงการของคุณลงในเวิร์กสเตชันคราสคือการที่คุณไม่ได้มี.projectและ.classpathไฟล์

ตอนนี้เรารู้ว่าทำไมเกิดเหตุการณ์เช่นนี้ดังนั้นสิ่งที่เราต้องทำคือการสร้าง.projectและ.classpathไฟล์ภายในแฟ้มโครงการ นี่คือวิธีที่คุณทำ:


ขั้นแรกให้สร้างไฟล์. classpath :

  1. สร้างไฟล์ txt ใหม่และตั้งชื่อเป็น. classpath
  2. คัดลอกวางรหัสต่อไปนี้และบันทึก:

    <?xml version="1.0" encoding="UTF-8"?> <classpath> <classpathentry kind="src" path="src"/> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> <classpathentry kind="output" path="bin"/> </classpath>



จากนั้นสร้าง ไฟล์. project :

  1. สร้างไฟล์ txt ใหม่และตั้งชื่อเป็น. project
  2. คัดลอกวางรหัสต่อไปนี้:

    <?xml version="1.0" encoding="UTF-8"?> <projectDescription> <name>HereIsTheProjectName</name> <comment></comment> <projects> </projects> <buildSpec> <buildCommand> <name>org.eclipse.jdt.core.javabuilder</name> <arguments> </arguments> </buildCommand> </buildSpec> <natures> <nature>org.eclipse.jdt.core.javanature</nature> </natures> </projectDescription>

  3. คุณต้องเปลี่ยนฟิลด์ชื่อเป็นชื่อโครงการของคุณ คุณสามารถทำได้ในบรรทัดที่ 3 โดยเปลี่ยนHereIsTheProjectNameเป็นชื่อโปรเจ็กต์ของคุณเอง จากนั้นบันทึก


แค่นั้นก็สนุก !!


2
ฉันพบการคัดลอกไฟล์จากไฟล์โครงการอื่นและเพิ่งเปลี่ยนชื่อ
hram908

ตรง หากโปรเจ็กต์ที่คุณต้องการนำเข้าไม่มีไฟล์. project และ. classpath eclipse / sts จะไม่ระบุโปรเจ็กต์ของคุณที่จะนำเข้า
Sumanth Varada

4

หลังจากนั้นไม่นานในที่สุดฉันก็พบว่า! นี่ทางของฉัน: ไฟล์ -> โครงการใหม่ -> โครงการ Android จากรหัสที่มีอยู่ -> เรียกดูไดเรกทอรีรากโครงการของคุณเสร็จสิ้น!


3

เหตุผล : ID ของคุณไม่พบไฟล์. project สิ่งนี้เกิดขึ้นในคอมมิตคอมมิตที่หลาย ๆ ครั้งคนไม่ดันไฟล์. project

วิธีแก้ไข : หากคุณติดตั้ง maven ให้ใช้ลวดเย็บต่อไปนี้

  1. mvn eclipse: สะอาด
  2. mvn eclipse: คราส

สนุก!


1

หากคุณไม่มีฉันแค่มี.projectและ.classpathไฟล์ในไดเร็กทอรีวิธีเดียวที่ใช้ได้ผล (สำหรับฉันอย่างน้อย) กับ Eclipse เวอร์ชันล่าสุดคือ:

  1. สร้างโครงการ Android ใหม่
    • File-> New-> Project...-> Android-> Android Application Project->Next >
    • กรอกค่าในหน้านี้และต่อไปนี้ตามความต้องการของแอปพลิเคชันของคุณ
  2. รับรหัสที่มีอยู่ในโครงการที่คุณเพิ่งสร้างขึ้น
    • คลิกขวาที่srcไฟล์ใน Package Explorer
    • General-> File System->Next >
    • Browse ไปยังโครงการของคุณเลือกไฟล์ที่จำเป็นตี Finish

หลังจากนี้คุณควรมีโครงการที่มีรหัสที่มีอยู่ทั้งหมดรวมทั้งไฟล์ใหม่.projectและ.classpathไฟล์


0

ฉันมีปัญหาเดียวกันเมื่อฉันแก้ไข. project xml-file เมื่อฉันเปลี่ยนไฟล์กลับเป็นเวอร์ชันดั้งเดิมที่สร้างโปรเจ็กต์แล้วฉันก็สามารถนำเข้าโปรเจ็กต์ได้ อาจจะช่วยคนที่มีปัญหาแบบเดียวกันก็ได้นะ;)


0

หากคุณกำลังสร้างโครงการ maven ผ่านคอนโซลคำสั่งตรวจสอบให้แน่ใจว่าสิ่งต่อไปนี้อยู่ท้ายคำสั่ง:

eclipse:eclipse -Dwtpversion=2.0

0

เพื่อแก้ไขปัญหานี้สำหรับโครงการ Android ทำตามขั้นตอนที่กล่าวถึงด้านล่าง new-> android project-> สร้างโครงการจากแหล่งที่มาที่มีอยู่และในสิ่งนี้คุณสามารถระบุตำแหน่งรหัสของคุณได้ ตอนนี้จะนำเข้ารหัสโครงการที่ระบุทั้งหมดและจะทำงานได้ดี

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