คำถามติดแท็ก package

แพคเกจในวงกว้างหมายถึงสองสิ่ง: 1) หน่วย / ส่วนประกอบที่ใช้งานได้ของซอฟต์แวร์ในตัว / คอมไพล์หรือ 2) พาร์ติชันของโกลบอลเนมสเปซ (java)

10
วิธีการ npm เผยแพร่โฟลเดอร์เฉพาะ แต่เป็นแพ็กเกจรูท
distผมมีโครงการที่มีงานอึกสำหรับการสร้างและบรรจุภัณฑ์แหล่งที่มาและการเปิดตัวในไดเรกทอรีที่เรียกว่า เป้าหมายของฉันคือเผยแพร่เป็นแพ็คเกจ npm แต่มีเพียงโฟลเดอร์ dist ของฉันเท่านั้น เอกสาร NPMบอกว่าผมสามารถใช้filesแท็กเพื่อระบุไฟล์ที่จะส่งออก มันได้ผล. แต่เอกสารยังบอกด้วยว่า: หากคุณตั้งชื่อโฟลเดอร์ในอาร์เรย์โฟลเดอร์นั้นจะรวมไฟล์ไว้ในโฟลเดอร์นั้นด้วย ผลลัพธ์คือแพ็กเกจ npm ซึ่ง node_modules มีลักษณะดังนี้: แต่ฉันต้องการดูไฟล์ทั้งหมดของฉันที่รูทของแพ็คเกจ (ไม่มีdistโฟลเดอร์นั้น) index.jsไฟล์ของฉันอยู่ในdistโฟลเดอร์ แต่ควรอยู่ที่รูท ฉันพยายามตั้งค่าแท็กfilesเป็น/dist/**/*แต่ไม่ได้ผล ฉันจะบรรลุได้อย่างไร?

3
Absolute เทียบกับการนำเข้าแบบสัมพัทธ์อย่างชัดเจนของโมดูล Python
ฉันสงสัยเกี่ยวกับวิธีการนำเข้าแพ็คเกจในแอปพลิเคชัน Python ที่ต้องการ ฉันมีโครงสร้างแพ็คเกจดังนี้: project.app1.models project.app1.views project.app2.models project.app1.viewsการนำเข้าproject.app1.modelsและproject.app2.models. มีสองวิธีในการทำสิ่งนี้ที่ควรคำนึงถึง ด้วยการนำเข้าที่แน่นอน: import A.A import A.B.B หรือด้วยการนำเข้าสัมพัทธ์อย่างชัดเจนดังที่แนะนำในPython 2.5 ที่มี PEP 328 : # explicit relative from .. import A from . import B วิธีที่ยิ่งใหญ่ที่สุดในการทำเช่นนี้คืออะไร?

4
Python: นำเข้าโมดูลจากไดเร็กทอรีอื่นที่ระดับเดียวกันในลำดับชั้นของโปรเจ็กต์
ฉันได้เห็นตัวอย่างทุกประเภทและคำถามอื่น ๆ ที่คล้ายกัน แต่ดูเหมือนว่าฉันจะหาตัวอย่างที่ตรงกับสถานการณ์ของฉันไม่ได้ ฉันรู้สึกเหมือนคนทั่วไปที่ถามสิ่งนี้เพราะมีคำถามที่คล้ายกันมากมาย แต่ดูเหมือนจะไม่สามารถทำงานได้อย่าง "ถูกต้อง" นี่คือโครงการของฉัน: user_management (package) | |------- __init__.py | |------- Modules/ | | | |----- __init__.py | |----- LDAPManager.py | |----- PasswordManager.py | |------- Scripts/ | | | |----- __init__.py | |----- CreateUser.py | |----- FindUser.py ถ้าฉันย้าย "CreateUser.py" ไปยังไดเร็กทอรี user_management หลักฉันสามารถใช้: "import Modules.LDAPManager"เพื่อนำเข้า LDAPManager.py --- …

4
อะไรคือความแตกต่างระหว่างโมดูลและไลบรารีใน Python?
ฉันมีพื้นฐานใน Java และฉันยังใหม่กับ Python ฉันต้องการแน่ใจว่าฉันเข้าใจคำศัพท์ Python อย่างถูกต้องก่อนที่จะดำเนินการต่อ ความเข้าใจของฉันเกี่ยวกับโมดูลคือสคริปต์ที่สามารถนำเข้าได้โดยหลายสคริปต์เพื่อให้อ่านง่ายขึ้น เช่นเดียวกับใน java คุณมีคลาสและคลาสนั้นสามารถนำเข้าโดยคลาสอื่น ๆ ได้ ความเข้าใจของฉันเกี่ยวกับไลบรารีคือไลบรารีประกอบด้วยโมดูลจำนวนมากซึ่งแยกตามการใช้งาน คำถามของฉันคือไลบรารีเป็นเหมือนแพ็คเกจที่คุณมีแพ็คเกจเช่นเรียกว่าfood: chocolate.py sweets.py biscuts.py บรรจุอยู่ในfoodแพ็คเกจ? หรือห้องสมุดใช้แพ็คเกจดังนั้นหากเรามีแพ็คเกจอื่นdrink: milk.py juice.py ที่มีอยู่ในแพ็คเกจ libraryมีสองแพคเกจ? นอกจากนี้ส่วนต่อประสานการเขียนโปรแกรมแอปพลิเคชัน (API) มักจะมีชุดของไลบรารีอยู่ที่ด้านบนของลำดับชั้น: API ห้องสมุด แพ็คเกจ โมดูล สคริปต์ ดังนั้น API จะประกอบด้วย 2-5 ทั้งหมด?
87 python  module  package 

13
Eclipse: แพ็กเกจที่ประกาศไม่ตรงกับแพ็กเกจที่คาดไว้
ฉันมีปัญหาในการนำเข้าโครงการภายนอก ฉันไปที่ File -> Import ... -> Projects ที่มีอยู่ลงใน Workspace เลือกโฟลเดอร์ที่มีโปรเจ็กต์และทุกอย่างจะถูกนำเข้า - แต่ชื่อแพ็กเกจของโปรเจ็กต์ดูเหมือนจะไม่เป็นไปตามที่ Eclipse คาดหวัง ชื่อแพ็คเกจทั้งหมดมีคำนำหน้า: prefix.packagename1 prefix.packagename2 เป็นต้น แต่คาดว่าคราส src.prefix1.prefix.packagename1 src.prefix1.prefix.packagename2 ฯลฯ เนื่องจากไดเร็กทอรีคือ src / prefix1 / prefix / package1 ฉันไม่อยากยุ่งกับรหัสภายนอกจริงๆ ฉันจะบอกให้ Eclipse ละเว้นไดเร็กทอรี "src / prefix1" ได้อย่างไร หรือทำอะไรได้อีก?
86 java  eclipse  package 

3
การเพิ่มโค้ดใน __init__.py
ฉันกำลังดูว่าระบบโมเดลใน django ทำงานอย่างไรและฉันสังเกตเห็นบางสิ่งที่ฉันไม่เข้าใจ ฉันรู้ว่าคุณสร้าง__init__.pyไฟล์ว่างเพื่อระบุว่าไดเร็กทอรีปัจจุบันเป็นแพ็กเกจ และคุณสามารถตั้งค่าตัวแปร__init__.pyเพื่อให้ import * ทำงานได้อย่างถูกต้อง แต่ django เพิ่มคำสั่ง from ... import ... และกำหนดกลุ่มของคลาสใน__init__.py. ทำไม? สิ่งนี้ไม่ทำให้สิ่งต่างๆดูยุ่งเหยิง? มีเหตุผลที่ต้องใช้รหัสนี้__init__.pyหรือไม่?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.