การกำหนดค่า Eclipse เพื่อรวบรวม Haskell ด้วย EclipseFP Plugin


11

ฉันเพียงแค่ติดตั้งปลั๊กอิน EclipseFP เข้าสู่การตั้งค่าคราสของฉัน (บน Windows 7 32bit ถ้าเรื่องนั้น) ดังต่อไปนี้คำแนะนำ จากนั้นฉันทำตามคำแนะนำใน Eclipse ช่วยเอกสารเพื่อสร้างHello Worldโครงการสำเร็จ

อย่างไรก็ตามฉันค่อนข้างแน่ใจว่ามีบางอย่างผิดปกติ แต่ฉันไม่สามารถเข้าใจได้ ก่อนอื่นไม่มีการเน้นไวยากรณ์แม้ว่าฉันจะเปิดไฟล์อย่างชัดเจนด้วย Haskell Editor ประการที่สองการกดปุ่มเพื่อเปิดใช้งานคอนโซล GHCi ในแท็บคอนโซล นี่เป็นประโยชน์จริง ๆ แต่ไม่ถูกต้องเนื่องจากไม่ได้เรียกใช้ไฟล์ให้รวบรวมและโหลดเท่านั้น นอกจากนี้มุมมองเค้าร่างว่างเปล่าแม้ว่าฉันจะเปิดไฟล์ Haskell ขนาดใหญ่พอสมควร

สุดท้าย แต่ไม่ท้ายสุดโครงการเริ่มรายงานว่าไม่มีการปรับใช้ Haskell ฉันเข้าสู่การตั้งค่า (แม้ว่าจะไม่ได้อธิบายว่าจำเป็นสำหรับทุกที่) และเพิ่มการใช้ GHC ด้วยตนเองชี้ไปที่ไดเรกทอรีถังของการติดตั้งแพลตฟอร์ม Haskell ของฉัน อย่างดีที่สุดที่ฉันสามารถบอกได้ แต่นี่ไม่มีผลใด ๆ

คำตอบ:


19

EclipseFP ดูเหมือนจะไม่ได้รับการรักษาอย่างแข็งขัน ; ใช้ความเสี่ยงของคุณเอง


หลังจากความช่วยเหลือที่ดีเยี่ยมจากนักพัฒนา EclipseFP ในรายชื่อผู้รับจดหมายของพวกเขาฉันได้รวบรวมชุดคำแนะนำสำหรับการติดตั้ง EclipseFP รุ่นปัจจุบัน (2.0.2) คุณสามารถอ่านอีเมลของฉันได้แต่ด้านล่างนี้เป็นคำแนะนำ - ยาว แต่ไม่ยากอย่างที่ดูและผลลัพธ์ค่อนข้างดี:

  1. ติดตั้ง GHC / GHCi - แต่คุณทำไปแล้วใช่ไหม?
  2. ติดตั้งEclipse 3.5 + หากคุณยังไม่ได้ดาวน์โหลด Eclipse (เพราะเหตุใด?!) ให้ดาวน์โหลด - ทั้ง IDE สำหรับ Java Developers หากคุณต้องการใช้กับ Java เช่นกันหรือเพียงแค่ Eclipse Classic ถ้าไม่ "การติดตั้ง" ประกอบด้วยเพียงการแตกโฟลเดอร์ eclipse ที่ใดที่หนึ่งและเรียกใช้ eclipse ที่ปฏิบัติการได้ไม่มีอะไรจะติดตั้งจริง ๆ มันแจ้งให้คุณเลือกพื้นที่ทำงานโฟลเดอร์ผู้ใช้ของคุณหรือโฟลเดอร์เอกสารของคุณเป็นตัวเลือกที่ดีถ้าคุณไม่มีการตั้งค่า
  3. ติดตั้งปลั๊กอิน EclipseFP ใน Eclipse ไปที่วิธีใช้> ติดตั้งซอฟต์แวร์ใหม่และวาง http://eclipsefp.sf.net/updatesในฟิลด์ทำงานกับ: - กด Enter ในช่องด้านล่าง "ฟังก์ชั่นการเขียนโปรแกรม" ควรจะปรากฏขึ้นหลังจากนั้นสักครู่ยกเลิกและลองใหม่หากมันไม่ได้ ขยาย "ฟังก์ชั่นการเขียนโปรแกรม" และตรวจสอบปลั๊กอินสนับสนุน 2.xx Haskell ทำตามขั้นตอนที่เหลือและ EclipseFP จะถูกติดตั้งและจะแจ้งให้คุณรีสตาร์ท Eclipse
  4. อัปเดตพันธมิตร ในขณะที่คุณรอเปิดหน้าต่างพรอมต์คำสั่ง (พิมพ์ cmd ในแถบเริ่มต้นบน Win Vista / 7) หรือเทอร์มินัลแล้วป้อน 'cabal update' สิ่งนี้จะอัพเดตแพ็คเกจที่ Haskell ต้องการเพื่อให้ EclipseFP ทำงานได้
  5. กำหนดค่า EclipseFP ไปที่หน้าต่าง> การตั้งค่าและขยายส่วน Haskell คลิกที่ "การใช้งาน Haskell" และคลิก "เพิ่ม" ป้อนชื่อที่สมเหตุสมผล (ฉันเรียกมันว่า "แพลตฟอร์ม Haskell") จากนั้นเรียกดูไดเรกทอรีช่องเก็บของการติดตั้ง GHC ของคุณซึ่งบน Windows เป็นชื่อ "C: \ Program Files \ Haskell Platform \ 2010.2.0.0 \ bin" มันจะเติมรายการในโฟลเดอร์ Version และ Library ด้านล่างคลิกตกลง คลิกตกลงเพื่อบันทึกการตั้งค่าเหล่านี้จากนั้นเปิดหน้าต่างการตั้งค่าอีกครั้ง ไปที่ "ไซออนและพันธมิตร" และคลิก "ตรวจสอบอัตโนมัติ" ทางด้านขวา มันควรเพิ่มไอเท็มในรายการของการติดตั้ง Cabal ที่ติดตั้ง แต่ถ้ามันไม่ได้ให้คลิกเพิ่มให้มันชื่อเช่น "Cabal" และให้เส้นทางไปยัง Cabal executable ซึ่งบน Windows เป็นสิ่งที่ "C:
  6. สร้างเซิร์ฟเวอร์ Scion ตามทฤษฎีเมื่อออกจากหน้าต่างการตั้งค่า EclipseFP จะเริ่มทำงานมากมายเพื่อสร้างเซิร์ฟเวอร์ Scion หากไม่เป็นเช่นนั้นเพียงออกและรีสตาร์ท Eclipse และเมื่อรีสตาร์ทแล้วมันจะเริ่มสร้าง ด้วยโชคใด ๆ มันจะใช้เวลาสองสามนาทีแล้วเสร็จอย่างไรก็ตามคุณอาจพบปัญหาเนื่องจากระบบการกำหนดเวอร์ชันของ Haskell / Cabal หากล้มเหลวให้ลองเรียกใช้ "การอัพเดต cabal" อีกครั้งหรือเรียกใช้บางอย่างเช่น "cabal install network-2.3" โดยที่ network-2.3 เป็นแพ็คเกจที่บิลด์สคริปต์รายงานไม่ถูกต้อง เมื่อเซิร์ฟเวอร์ Scion ถูกสร้างขึ้นเราก็พร้อมแล้ว รีสตาร์ท Eclipse อีกครั้งเพื่อทำการวัดที่ดี
  7. สร้างโครงการ Haskell เปลี่ยนเป็นเปอร์สเปคทีฟ Haskell หากยังไม่เกิดขึ้น - ที่มุมบนขวาคลิกไอคอนเปิดเปอร์สเปคทีฟคลิกอื่น ๆ หากคุณไม่เห็น Haskell ในรายการและเลือก Haskell จากป๊อปอัพ ตอนนี้ไปที่ไฟล์> ใหม่> โครงการ Haskel (หรือโครงการแล้วเลือกโครงการ Haskell) และสร้างโครงการ ในการสร้างไฟล์ Haskell แรกของคุณให้คลิกขวาที่ src flolder ในโครงการและเลือกใหม่> โมดูล Haskell สิ่งนี้จะสร้างไฟล์ Haskell คุณสามารถทำสิ่งที่คุณต้องการได้ หากต้องการเรียกใช้ไฟล์ให้คลิกปุ่ม Run (วงกลมสีเขียวสามเหลี่ยมสีขาว) ใกล้กับด้านบน การดำเนินการนี้จะเปิดใช้งานเทอร์มินัล GHCi พื้นฐานในแท็บคอนโซลด้านล่างพร้อมกับแจ้ง "Prelude>" หากไฟล์มีข้อผิดพลาดหรือ "MODULENAME>" หากคอมไพล์สำเร็จ คุณสามารถใช้สิ่งนี้เช่นเทอร์มินัล GHCi ภายนอกเพื่อเรียกใช้คำสั่งเช่น: t,
  8. กำหนดค่าวิธีที่ไฟล์รัน สิ่งสุดท้ายที่จะทำให้ชีวิตของคุณง่ายขึ้นคือการบอก EclipseFP ให้รีโหลดไฟล์โดยอัตโนมัติเมื่อมันถูกบันทึกและเรียกใช้ฟังก์ชั่น (เช่น "main") หลังจากที่โหลดไฟล์ใหม่ ในการทำเช่นนี้คลิกที่ลูกศรลงถัดจากปุ่มเรียกใช้แล้วเลือก "เรียกใช้การกำหนดค่า" คลิกที่การกำหนดค่าทางด้านซ้ายของไฟล์ที่คุณต้องการจากนั้นคลิกที่แท็บ Automation ทำเครื่องหมายที่ "รีโหลดแพ็กเกจเมื่อบันทึก" หากคุณไม่ต้องการพิมพ์ ": r" ทั้งวันและพิมพ์ชื่อฟังก์ชั่นเช่น "main" และตรวจสอบคำสั่ง "รันใหม่หลังจากโหลดซ้ำ" เพื่อเรียกใช้คำสั่งอัตโนมัติ

@dimo - ฉันเพิ่งได้ "ไม่สามารถค้นหาไฟล์เรียกทำงานที่จะเปิดใช้งาน" เมื่อใช้งานและฉันตั้งค่า GHCI และฉันตั้งค่าการกำหนดค่าการทำงานเป็น "Haskell Application" และไดเรกทอรีทำงานเป็นโฟลเดอร์โครงการของฉัน มันยังคงทำเช่นนั้นใน WIndows ใน Ubuntu มันทำอย่างนั้นในตอนแรกจากนั้นฉันปิด Eclipse และเปิดมันและทำโครงการใหม่และมันใช้งานได้อย่างน่าอัศจรรย์ แต่ใน Windows ฉันเป็น f * cked
Sacha T Red

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

ในขั้นตอนที่ 4 คุณพูดว่า "ขณะที่คุณรอ"; อ้างถึงขั้นตอนที่ 3 หรือไม่ คือหมายความว่าขั้นตอนที่ 4 สามารถดำเนินการได้ในขณะที่ขั้นตอนที่ 3 อยู่ในระหว่างดำเนินการหรือไม่

@FleetCommand ใช่ cabal สามารถอัปเดตได้ในขณะที่ EclipseFP กำลังถูกติดตั้ง - มันจำเป็นเฉพาะเมื่อคุณพยายามเรียกใช้ปลั๊กอิน
dimo414

1

ปลั๊กอิน EclipseFP ไม่ได้รับการดูแลรักษาตั้งแต่ 2015-05-14และดูเหมือนจะไม่ทำงานกับ Eclipse เวอร์ชันล่าสุด


@ David ถ้าคุณมองอย่างระมัดระวังคุณจะเห็นคำตอบอื่น ๆ ที่ซ้ำกันของฉัน เพิ่มข้อความที่ด้านบนหลังจากฉันโพสต์คำตอบของฉัน หากปราศจากบันทึกนั้นมันทำให้เข้าใจผิดและทำให้ฉันต้องใช้เวลาจำนวนมากในการพยายามทำให้มันทำงานก่อนที่จะปล่อยมันก็ไม่ทำงานอีกต่อไป
Kaveh

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