IntelliJ ไม่แสดง 'คลาส' เมื่อเราคลิกขวาและเลือก 'ใหม่'


140

เรากำลังสร้างโครงการใหม่ใน IntelliJ และต้องมีบางอย่างผิดปกติเพราะเมื่อเราคลิกขวาที่ไดเรกทอรีเลือกใหม่จากนั้นรับเมนูบริบทตัวเลือกที่ใช้ Java จะไม่แสดง ขณะนี้ได้รับสิ่งต่าง ๆ เช่นไฟล์ตัวเลือก HTML บางตัวเลือก XML

เราสันนิษฐานว่าเป็นสิ่งที่เราไม่ได้กำหนดค่าอย่างถูกต้องในการกำหนดค่าโครงการ / โมดูล โมดูลใหม่ที่เรากำลังพูดถึงเป็นส่วนหนึ่งของโครงการหลายโมดูล เราสร้างมันขึ้นมาโดยใช้แม่แบบเว็บ Maven

มีความช่วยเหลือในการกำหนดลักษณะโครงการหรือไม่?

แก้ไข: คำตอบนั้นเป็นพื้นฐาน: 'ช่วงเวลานั้นเมื่อคุณตระหนักถึงบางสิ่งที่ไม่ได้ผลเพราะคุณไม่ได้คลิก' ใช้ '... :) เราหัวเราะด้วยตัวเองเมื่อเราค้นพบสิ่งนี้'


3
คำถามไม่ซ้ำกันเพราะมันมีมาก่อนข้อเสนอแนะโดย 1 ปี
Crowie

3
ไม่ซ้ำกันเพราะเป็นปัญหาและวิธีแก้ไขปัญหาที่แตกต่าง
Brian Agnew

1
ในชื่อแพคเกจกรณีของฉันไม่ถูกต้อง int.project.mypackage. intไม่อนุญาตในชื่อแพ็คเกจ
ไม่ใช่ข้อบกพร่อง

คำตอบ:


346

ไดเรกทอรีหรือหนึ่งในไดเรกทอรีหลักจะต้องทำเครื่องหมายว่าSource Root(ในกรณีนี้มันจะปรากฏเป็นสีน้ำเงิน)

หากไม่เป็นเช่นนั้นให้คลิกขวาที่ไดเรกทอรีแหล่งรากของคุณ -> ทำเครื่องหมายเป็น -> แหล่งที่มา


11
ถ้าเป็นไดเรกทอรีทดสอบให้ทำเครื่องหมายว่าเป็นTest Source Root(จะปรากฏเป็นสีเขียว)
Arnaud Denoyelle

'ทำเครื่องหมายไดเรกทอรีเป็น' ไม่พร้อมใช้งานในเมนูรุ่น Android ของฉันรุ่น 2.1 วิธีแก้ปัญหาใด ๆ
CHARRIS

4
นอกจากนี้ intellj-idea จะรับรู้โฟลเดอร์โดยอัตโนมัติเป็นซอร์สรูทเมื่อเรามีโครงสร้างในลักษณะเช่นนี้: src / main / java
zkvarz

8
IntelliJ ทำให้การตัดสินใจออกแบบที่น่าสงสัยจริงๆ
SpacePrez

23

สิ่งนี้อาจเกิดขึ้นได้หากชื่อแพ็คเกจของคุณไม่ถูกต้อง

ตัวอย่างเช่นหาก "แพ็คเกจ" ของคุณคือcom.my-company(ซึ่งไม่ใช่ชื่อแพคเกจ Java ที่ถูกต้องเนื่องจากขีดกลาง) IntelliJ จะป้องกันไม่ให้คุณสร้าง Java Class ในแพ็คเกจนั้น


2
อันนี้ ... มันใช้งานได้ เปลี่ยนเส้นประเป็นขีดล่างและทำงานได้ทันที
Andrew Grinder

10

คุณต้องทำเครื่องหมายไดเรกทอรีของคุณเป็นแหล่งราก (คลิกขวาที่ไดเรกทอรีหลัก)

จากนั้นรวบรวมปลั๊กอิน (เป็นสิ่งสำคัญ)

ดังนั้นคุณจะสามารถเพิ่มคลาสและอีกมากมาย

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

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


6

หากคุณเปิดการตั้งค่าโมดูล ( F4 ) คุณสามารถเสนอเส้นทางที่มี 'แหล่งที่มา' Intellij จะทำเครื่องหมายไดเรกทอรีเหล่านี้เป็นสีน้ำเงินและอนุญาตให้คุณเพิ่มคลาสเป็นต้น

ในทำนองเดียวกันคุณสามารถเน้นไดเรกทอรีทดสอบสำหรับการทดสอบหน่วย


4

โครงสร้างโครงการ -> โมดูล -> {โมดูลของคุณ} -> แหล่งที่มา -> {คลิกโฟลเดอร์ชื่อ java ใน src / main} -> คลิกปุ่มสีน้ำเงินที่ img เป็นโฟลเดอร์สีฟ้าจากนั้นคุณจะเห็นกล่องขวามีรายการใหม่ (โฟลเดอร์ต้นทาง) เสร็จแล้ว;


1
ขอบคุณ! สิ่งนี้ใช้ได้ผล สำหรับมือใหม่ที่ค้นหาโครงสร้างโครงการคุณสามารถค้นหาได้จากเมนูไฟล์หรือกดCtrl + Alt + Shift + Sในหน้าต่าง
jacobcs

3

อีกวิธีที่เป็นไปได้คือชื่อโครงการไม่เป็นที่ยอมรับ ตัวอย่างเช่นการสร้างโครงการที่มีช่องว่างในชื่อไม่ได้ปิดกั้นการสร้างโครงการ แต่แหล่งที่มาที่เหมาะสมจะไม่ถูกทำเครื่องหมายและเมื่อสิ่งเหล่านั้นถูกทำเครื่องหมายด้วยตนเองฉันยังคงไม่สามารถสร้างคลาสได้ การสร้างโปรเจ็กต์ใหม่ด้วยยัติภังค์ (-) แทนการเว้นวรรคช่วยแก้ไขปัญหาให้ฉันได้


-1

มีปัญหานี้ด้วย การทำให้ใช้แคช / รีสตาร์ทไม่ถูกต้องทำให้ฉันไม่ได้ โปรดโหวตขึ้นเพื่อที่กลุ่ม IntelliJ จะให้ความสำคัญกับเรื่องนี้มากขึ้น สิ่งนี้ทำให้ IDE มีประสบการณ์ UI / UX ที่แย่มาก

https://youtrack.jetbrains.com/issue/IDEA-203100

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