ทำไมแอป MacOS ไม่ทำงานจาก Launchpad หรือ Finder แต่ทำงานจากเทอร์มินัล


1

MacOS รุ่นล่าสุด 10.14.2

ทำงานจากเทอร์มินัล

> "/Applications/Racket v7.1/bin/DrRacket"

แต่ DrRacket ขัดข้องหรือไม่ทำงาน (ไม่สามารถบอกได้ว่าเมื่อใด) เมื่อฉันเรียกใช้แอปจาก Launchpad และสิ่งเดียวกันจะเกิดขึ้นเมื่อค้นหาไฟล์ปฏิบัติการใน Finder และคลิกขวาและเลือก "เปิด" (ซึ่งจะทำให้ฉันผ่านได้ ตรวจสอบความปลอดภัยใด ๆ )


โปรดสร้างแท็กสำหรับแร็กเก็ต (ภาษา)
Ryan

ไม่ทราบว่าไม้แร็คเก็ต (Dr) คืออะไร แต่สมมติว่าเส้นทางที่แสดงด้านบนเป็นเส้นทางที่สมบูรณ์ไปสู่ไบนารีที่สามารถเรียกใช้งานได้ซึ่งจะอธิบายว่าทำไมมันจึงทำงานได้จาก Terminal ไม่ใช่จาก Finder / Launchpad ฉันไม่มีรายละเอียดเฉพาะ แต่ต้องใช้แอป "MacOS" เพื่อให้มีโครงสร้างโฟลเดอร์เฉพาะ คุณเรียกใช้ "โฟลเดอร์" ( /Applications/Racket v7.1) และ Finder จะค้นหาตำแหน่งที่เรียกใช้ "จริง" ได้โดยดูที่โครงสร้างของโฟลเดอร์ และ "./bin" ไม่ได้ เมื่อแอพนี้เรียกใช้จากเทอร์มินัลจะรันภายในหน้าต่างเทอร์มินัลหรือเปิดใช้ GUI ของตัวเองหรือไม่ มันต้องใช้ "X" ในการทำงานด้วยหรือไม่?
jimtut

คำตอบ:


1

เนื่องจากเป็นข้ามแพลตฟอร์มแร็กเก็ตไม่ได้ถูกสร้างขึ้นโดยใช้macOS App Bundleมาตรฐานและการเปิด DMG เพียงแค่แสดงโฟลเดอร์ไม่ใช่แอป ภายในโฟลเดอร์คือ DrRacket.app ซึ่งเปิดใช้งานผ่าน Finder หรือ Launchpad นอกจากนี้ยังมีโฟลเดอร์ต่างๆสำหรับการติดตั้งบรรทัดคำสั่งแบบดั้งเดิมมากขึ้น

ตั้งแต่แร็กเก็ต 7.2 "/ Applications / Racket \ v7.2 / bin / drracket" (หมายเหตุตัวพิมพ์เล็ก) เป็นเชลล์สคริปต์ที่ออกแบบมาเพื่อเปิดแอพ GUI ผ่านเทอร์มินัล ที่บรรจุอยู่ภายในโฟลเดอร์นั้นเป็นแอปพลิเคชั่น "แร็กเกต" ที่มีเทอร์มินัล

คุณสามารถลากไฟล์ DrRacket.app จากระดับบนสุดของโฟลเดอร์ Racket 7.X ไปยังเดสก์ท็อปหรือ Dock หากคุณต้องการวิธีเปิดใช้ GUI อย่างรวดเร็วหรือใช้ Spotlight


0

มันเป็นเพราะลายเซ็นรหัสที่ล้าสมัย MacOS ป้องกันไม่ให้ทำงาน เพื่อแทนที่พฤติกรรมนี้นักพัฒนาของ DrRacket บอกให้ฉันลากแอพออกจากโฟลเดอร์และกลับเข้าไปในโฟลเดอร์เพื่อบังคับให้ MacOS เชื่อถือแอพ สิ่งนี้ใช้ได้ผล

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