ฉันมีโครงการตัวอย่างโดยมีการตั้งค่าต่อไปนี้:
/root
+ Pure Java Lib
+ Android Test Lib
+ Android Test Project
ที่ ' โครงการทดสอบ ' ขึ้นอยู่กับ ' ทดสอบ Lib ' และสุดท้ายขึ้นอยู่กับ ' Pure Java Lib ' รวบรวมโครงการและเปิดใช้งานการตั้งค่านี้ได้ดี
ตอนนี้ฉันกำลังคิดที่จะนำเข้าพื้นที่ทำงาน Eclipse ก่อนหน้าของฉันและทำงานกับ Android studio ปัญหาคือการตั้งค่าโครงการแตกต่างกันและฉันต้องการให้มันเป็นแบบนี้
ตัวอย่างเช่นหากใช้ตัวอย่างก่อนหน้านี้:
/root
+ Android Test Lib
+ Android Test Project
/Some Other folder (another repository for example)
+ Pure Java Lib
ฉันลองการกำหนดค่าหลายอย่างแล้ว แต่ฉันไม่พบวิธีการอ้างอิงโครงการนอกขอบเขตของโฟลเดอร์หลัก (' รูท ' ในกรณีตัวอย่าง)
ในหลายแพลตฟอร์ม / โมดูลคุณสามารถใช้ '.. ' เพื่อเลื่อนขึ้นในโฟลเดอร์ แต่สิ่งนี้ไม่ได้ผลสำหรับฉันบางทีฉันอาจใช้ผิด
ไม่มีใครรู้ว่าสิ่งนี้สามารถทำได้ด้วย Gradle?
UPDATE
ฉันจะพยายามที่จะเป็นแบบทั่วไปมากขึ้น:
/C:/
/Project A
+ Module 1 - Pure Java
+ Module 2 - Android Test Lib
+ Module 3 - Android Test Project
/Project B
+ Module 1 - Pure Java
+ Module 2 - Pure Java
+ Module 3 - Pure Java
ผมอยากจะใช้โมดูล 1 ของโครงการ B , ในโครงการ
อัปเดต: 09-03-19
ฉันเห็นสิ่งนี้ในตอนนี้และฉันต้องอัปเดต ... หลังจากผ่านไปเกือบ 6 ปีแล้ววันนี้ฉันฉลาดและฉันสามารถพูดได้อย่างแน่นอนว่าปัญหาคือฉันเข้าใจผิดแนวคิดของ "ที่มาของความจริง"
ในขณะที่การอ้างอิงห้องสมุดหนึ่งเป็นสิ่งที่ดีที่จะมีแนวคิด .. และอาจดูเหมือน "แหล่งที่มาของความจริง" ที่ "แหล่งที่มาของความจริง" REAL "จะเป็นรุ่นของรหัสที่แต่ละโครงการใช้ห้องสมุดของสาเหตุ ไลบรารี่เองนั้นมีหลายเวอร์ชั่น .. หลายเวอร์ชั่น "แหล่งที่มาของความจริง" นั้นสัมพันธ์กับโครงการที่ใช้ไลบรารี
วิธีที่ถูกต้องคือการใช้สิ่งที่นักพัฒนาส่วนใหญ่ไม่ชอบและนั่นคือ submodules คอมไพล์และใช่แหล่งที่มาที่ซ้ำกันในแต่ละโครงการทำให้เกิดโอกาสมากที่สุดที่แต่ละโครงการจะใช้รหัสรุ่นที่แตกต่างกัน
อย่างไรก็ตามคุณจะต้องตั้งเป้าหมายให้ทุกโครงการของคุณใช้ไลบรารี่รุ่นล่าสุดและยิ่งใหญ่ที่สุดของคุณ .. ซึ่งเป็นความท้าทายด้วยตัวมันเอง
เหตุผลนี้เป็นวิธีที่ถูกต้องในการพัฒนาโครงการที่มีแหล่งที่มาของไลบรารีเพราะขนาดนี้ ... คุณสามารถมีหลายร้อยโครงการในแต่ละโครงการที่มีการกำหนดค่าห้องสมุดของตัวเอง