ಯೂನಿಟಿ ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್

ಯೂನಿಟಿ ಒಂದು ವೇದಿಕೆಯಾಗಿದ್ದು ಅದು ಸ್ವಲ್ಪ ಸಮಯದವರೆಗೆ ಇದೆ ಮತ್ತು ನಿರಂತರವಾಗಿ ವಿಕಸನಗೊಳ್ಳುತ್ತಿದೆ. ಆದಾಗ್ಯೂ, ಅದೇ ಸಮಯದಲ್ಲಿ ಹಲವಾರು ಯೋಜನೆಗಳೊಂದಿಗೆ ಅದರಲ್ಲಿ ಕೆಲಸ ಮಾಡುವಾಗ, ಸಾಮಾನ್ಯ ಮೂಲಗಳು (.cs), ಲೈಬ್ರರಿಗಳು (.dll) ಮತ್ತು ಇತರ ಸ್ವತ್ತುಗಳನ್ನು (ಚಿತ್ರಗಳು, ಧ್ವನಿಗಳು, ಮಾದರಿಗಳು, ಪ್ರಿಫ್ಯಾಬ್ಗಳು) ಬಳಸುವಲ್ಲಿ ನೀವು ಇನ್ನೂ ತೊಂದರೆಗಳನ್ನು ಎದುರಿಸಬಹುದು. ಈ ಲೇಖನದಲ್ಲಿ ನಾವು ಯೂನಿಟಿಗಾಗಿ ಅಂತಹ ಸಮಸ್ಯೆಗೆ ಸ್ಥಳೀಯ ಪರಿಹಾರದೊಂದಿಗೆ ನಮ್ಮ ಅನುಭವದ ಬಗ್ಗೆ ಮಾತನಾಡುತ್ತೇವೆ.

ಯೂನಿಟಿ ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್

ಹಂಚಿಕೆಯ ಸಂಪನ್ಮೂಲ ವಿತರಣಾ ವಿಧಾನಗಳು

ವಿಭಿನ್ನ ಯೋಜನೆಗಳಿಗೆ ಹಂಚಿಕೆಯ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಬಳಸಲು ಒಂದಕ್ಕಿಂತ ಹೆಚ್ಚು ಮಾರ್ಗಗಳಿವೆ, ಆದರೆ ಪ್ರತಿಯೊಂದು ವಿಧಾನವು ಅದರ ಸಾಧಕ-ಬಾಧಕಗಳನ್ನು ಹೊಂದಿದೆ.

1. ನಕಲು - ನಾವು "ಕೈಯಿಂದ" ಯೋಜನೆಗಳ ನಡುವೆ ಸಂಪನ್ಮೂಲಗಳನ್ನು ನಕಲು ಮಾಡುತ್ತೇವೆ.

ಒಳಿತು:

  • ಎಲ್ಲಾ ರೀತಿಯ ಸಂಪನ್ಮೂಲಗಳಿಗೆ ಸೂಕ್ತವಾಗಿದೆ.
  • ಅವಲಂಬನೆ ಸಮಸ್ಯೆಗಳಿಲ್ಲ.
  • ಸ್ವತ್ತು GUID ಗಳಲ್ಲಿ ಯಾವುದೇ ಸಮಸ್ಯೆಗಳಿಲ್ಲ.

ಕಾನ್ಸ್:

  • ದೈತ್ಯ ಭಂಡಾರಗಳು.
  • ಆವೃತ್ತಿಯ ಯಾವುದೇ ಸಾಧ್ಯತೆಯಿಲ್ಲ.
  • ಹಂಚಿದ ಸಂಪನ್ಮೂಲಗಳಿಗೆ ಬದಲಾವಣೆಗಳನ್ನು ಪತ್ತೆಹಚ್ಚುವಲ್ಲಿ ತೊಂದರೆ.
  • ಹಂಚಿದ ಸಂಪನ್ಮೂಲಗಳನ್ನು ನವೀಕರಿಸುವಲ್ಲಿ ತೊಂದರೆ.

2. ಜಿಟ್ ಉಪಮಾಡ್ಯೂಲ್‌ಗಳು - ಬಾಹ್ಯ ಉಪ ಮಾಡ್ಯೂಲ್‌ಗಳ ಮೂಲಕ ಹಂಚಿಕೆಯ ಸಂಪನ್ಮೂಲಗಳ ವಿತರಣೆ.

ಒಳಿತು:

  • ನೀವು ಮೂಲಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡಬಹುದು.
  • ನೀವು ಸ್ವತ್ತುಗಳನ್ನು ವಿತರಿಸಬಹುದು.
  • ಅವಲಂಬನೆ ಸಮಸ್ಯೆಗಳಿಲ್ಲ.

ಕಾನ್ಸ್:

  • Git ಅನುಭವದ ಅಗತ್ಯವಿದೆ.
  • ಬೈನರಿ ಫೈಲ್‌ಗಳೊಂದಿಗೆ Git ತುಂಬಾ ಸ್ನೇಹಪರವಾಗಿಲ್ಲ - ನೀವು LFS ಅನ್ನು ಸಂಪರ್ಕಿಸಬೇಕಾಗುತ್ತದೆ.
  • ರೆಪೊಸಿಟರಿಗಳಿಗೆ ಪ್ರವೇಶ ನಿಯಂತ್ರಣ.
  • ಆವೃತ್ತಿಗಳನ್ನು ನವೀಕರಿಸಲು ಮತ್ತು ಡೌನ್‌ಗ್ರೇಡ್ ಮಾಡಲು ತೊಂದರೆ.
  • GUID ಘರ್ಷಣೆಗಳು ಸಾಧ್ಯ ಮತ್ತು ಅವುಗಳನ್ನು ಪರಿಹರಿಸಲು ಯೂನಿಟಿಯ ಕಡೆಯಿಂದ ಯಾವುದೇ ಸ್ಪಷ್ಟ ನಡವಳಿಕೆಯಿಲ್ಲ.

3. NuGet - NuGet ಪ್ಯಾಕೇಜುಗಳ ಮೂಲಕ ಹಂಚಿಕೊಂಡ ಗ್ರಂಥಾಲಯಗಳ ವಿತರಣೆ.

ಒಳಿತು:

  • ಏಕತೆಯನ್ನು ಅವಲಂಬಿಸಿರದ ಯೋಜನೆಗಳೊಂದಿಗೆ ಅನುಕೂಲಕರ ಕೆಲಸ.
  • ಅನುಕೂಲಕರ ಆವೃತ್ತಿ ಮತ್ತು ಅವಲಂಬನೆ ರೆಸಲ್ಯೂಶನ್.

ಕಾನ್ಸ್:

  • ಯೂನಿಟಿಯು ಬಾಕ್ಸ್‌ನ ಹೊರಗೆ NuGet ಪ್ಯಾಕೇಜ್‌ಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ (GitHub ನಲ್ಲಿ ನೀವು ಯೂನಿಟಿಗಾಗಿ NuGet ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್ ಅನ್ನು ಕಾಣಬಹುದು, ಇದು ಇದನ್ನು ಸರಿಪಡಿಸುತ್ತದೆ, ಆದರೆ ಕೆಲವು ಸೂಕ್ಷ್ಮ ವ್ಯತ್ಯಾಸಗಳಿವೆ).
  • ಇತರ ರೀತಿಯ ಸ್ವತ್ತುಗಳನ್ನು ವಿತರಿಸುವಲ್ಲಿ ತೊಂದರೆಗಳು.

4. ಯೂನಿಟಿ ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್ - ಯೂನಿಟಿಗಾಗಿ ಸ್ಥಳೀಯ ಪರಿಹಾರದ ಮೂಲಕ ಹಂಚಿಕೆಯ ಸಂಪನ್ಮೂಲಗಳ ವಿತರಣೆ.

ಒಳಿತು:

  • ಪ್ಯಾಕೇಜುಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡಲು ಸ್ಥಳೀಯ ಇಂಟರ್ಫೇಸ್.
  • GUID ಸಂಘರ್ಷಗಳ ಕಾರಣದಿಂದಾಗಿ ಪ್ಯಾಕೇಜುಗಳಲ್ಲಿ .meta ಫೈಲ್‌ಗಳನ್ನು ಓವರ್‌ರೈಟ್ ಮಾಡುವುದರ ವಿರುದ್ಧ ರಕ್ಷಣೆ.
  • ಆವೃತ್ತಿಯ ಸಾಧ್ಯತೆ.
  • ಏಕತೆಗಾಗಿ ಎಲ್ಲಾ ರೀತಿಯ ಸಂಪನ್ಮೂಲಗಳನ್ನು ವಿತರಿಸುವ ಸಾಮರ್ಥ್ಯ.

ಕಾನ್ಸ್:

  • GUID ಸಂಘರ್ಷಗಳು ಇನ್ನೂ ಸಂಭವಿಸಬಹುದು.
  • ಅನುಷ್ಠಾನಕ್ಕೆ ಯಾವುದೇ ದಾಖಲೆಗಳಿಲ್ಲ.

ನಂತರದ ವಿಧಾನವು ಅನಾನುಕೂಲಗಳಿಗಿಂತ ಹೆಚ್ಚಿನ ಪ್ರಯೋಜನಗಳನ್ನು ಹೊಂದಿದೆ. ಆದಾಗ್ಯೂ, ದಾಖಲಾತಿಗಳ ಕೊರತೆಯಿಂದಾಗಿ ಇದು ಈಗ ಹೆಚ್ಚು ಜನಪ್ರಿಯವಾಗಿಲ್ಲ ಮತ್ತು ಆದ್ದರಿಂದ ನಾವು ಅದರ ಮೇಲೆ ವಿವರವಾಗಿ ವಾಸಿಸುತ್ತೇವೆ.

ಯೂನಿಟಿ ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್

ಯೂನಿಟಿ ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್ (UPM) ಒಂದು ಪ್ಯಾಕೇಜ್ ನಿರ್ವಹಣಾ ಸಾಧನವಾಗಿದೆ. ಇದನ್ನು ಯೂನಿಟಿ 2018.1 ರಲ್ಲಿ ಸೇರಿಸಲಾಗಿದೆ ಮತ್ತು ಯೂನಿಟಿ ಟೆಕ್ನಾಲಜೀಸ್ ಅಭಿವೃದ್ಧಿಪಡಿಸಿದ ಪ್ಯಾಕೇಜ್‌ಗಳಿಗೆ ಮಾತ್ರ ಬಳಸಲಾಗಿದೆ. ಆದಾಗ್ಯೂ, ಆವೃತ್ತಿ 2018.3 ರಿಂದ ಪ್ರಾರಂಭಿಸಿ, ಕಸ್ಟಮ್ ಪ್ಯಾಕೇಜ್‌ಗಳನ್ನು ಸೇರಿಸಲು ಸಾಧ್ಯವಾಯಿತು.

ಯೂನಿಟಿ ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್
ಯೂನಿಟಿ ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್ ಇಂಟರ್ಫೇಸ್

ಪ್ಯಾಕೇಜ್‌ಗಳು ಪ್ರಾಜೆಕ್ಟ್ ಮೂಲಗಳಲ್ಲಿ ಕೊನೆಗೊಳ್ಳುವುದಿಲ್ಲ (ಆಸ್ತಿಗಳ ಡೈರೆಕ್ಟರಿ). ಅವು ಪ್ರತ್ಯೇಕ ಡೈರೆಕ್ಟರಿಯಲ್ಲಿವೆ %projectFolder%/Library/PackageCache ಮತ್ತು ಯೋಜನೆಯ ಮೇಲೆ ಯಾವುದೇ ರೀತಿಯಲ್ಲಿ ಪರಿಣಾಮ ಬೀರಬೇಡಿ, ಮೂಲ ಕೋಡ್‌ನಲ್ಲಿ ಅವರ ಏಕೈಕ ಉಲ್ಲೇಖವು ಫೈಲ್‌ನಲ್ಲಿದೆ packages/manifest.json.

ಯೂನಿಟಿ ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್
ಯೋಜನೆಯ ಕಡತ ವ್ಯವಸ್ಥೆಯಲ್ಲಿನ ಪ್ಯಾಕೇಜುಗಳು

ಪ್ಯಾಕೇಜ್ ಮೂಲಗಳು

UPM ಹಲವಾರು ಪ್ಯಾಕೇಜ್ ಮೂಲಗಳನ್ನು ಬಳಸಬಹುದು:

1. ಫೈಲ್ ಸಿಸ್ಟಮ್.

ಒಳಿತು:

  • ಅನುಷ್ಠಾನದ ವೇಗ.
  • ಮೂರನೇ ವ್ಯಕ್ತಿಯ ಉಪಕರಣಗಳು ಅಗತ್ಯವಿಲ್ಲ.

ಕಾನ್ಸ್:

  • ಆವೃತ್ತಿಯಲ್ಲಿ ತೊಂದರೆ.
  • ಯೋಜನೆಯೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವ ಪ್ರತಿಯೊಬ್ಬರಿಗೂ ಫೈಲ್ ಸಿಸ್ಟಮ್‌ಗೆ ಹಂಚಿಕೆಯ ಪ್ರವೇಶದ ಅಗತ್ಯವಿದೆ.

2. Git ರೆಪೊಸಿಟರಿ.

ಒಳಿತು:

  • ನಿಮಗೆ ಬೇಕಾಗಿರುವುದು ಜಿಟ್ ರೆಪೊಸಿಟರಿ.

ಕಾನ್ಸ್:

  • UPM ವಿಂಡೋ ಮೂಲಕ ನೀವು ಆವೃತ್ತಿಗಳ ನಡುವೆ ಬದಲಾಯಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ.
  • ಎಲ್ಲಾ Git ರೆಪೊಸಿಟರಿಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವುದಿಲ್ಲ.

3. npm ರೆಪೊಸಿಟರಿ.

ಒಳಿತು:

  • ಯುಪಿಎಂ ಕಾರ್ಯವನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ಬೆಂಬಲಿಸುತ್ತದೆ ಮತ್ತು ಅಧಿಕೃತ ಯೂನಿಟಿ ಪ್ಯಾಕೇಜ್‌ಗಳನ್ನು ವಿತರಿಸಲು ಬಳಸಲಾಗುತ್ತದೆ.

ಕಾನ್ಸ್:

  • ಪ್ರಸ್ತುತ "-ಪೂರ್ವವೀಕ್ಷಣೆ" ಹೊರತುಪಡಿಸಿ ಪ್ಯಾಕೇಜುಗಳ ಎಲ್ಲಾ ಸ್ಟ್ರಿಂಗ್ ಆವೃತ್ತಿಗಳನ್ನು ನಿರ್ಲಕ್ಷಿಸುತ್ತದೆ.

ಕೆಳಗೆ ನಾವು UPM + npm ಅನುಷ್ಠಾನವನ್ನು ನೋಡುತ್ತೇವೆ. ಈ ಬಂಡಲ್ ಅನುಕೂಲಕರವಾಗಿದೆ ಏಕೆಂದರೆ ಇದು ಯಾವುದೇ ರೀತಿಯ ಸಂಪನ್ಮೂಲದೊಂದಿಗೆ ಕೆಲಸ ಮಾಡಲು ಮತ್ತು ಪ್ಯಾಕೇಜ್ ಆವೃತ್ತಿಗಳನ್ನು ನಿರ್ವಹಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ ಮತ್ತು ಸ್ಥಳೀಯ UPM ಇಂಟರ್ಫೇಸ್ ಅನ್ನು ಸಹ ಸಂಪೂರ್ಣವಾಗಿ ಬೆಂಬಲಿಸುತ್ತದೆ.

ನೀವು ಅದನ್ನು npm ರೆಪೊಸಿಟರಿಯಾಗಿ ಬಳಸಬಹುದು ವರ್ಡಾಸಿಯೊ. ವಿವರವಿದೆ ದಸ್ತಾವೇಜನ್ನು, ಮತ್ತು ಅದನ್ನು ಚಲಾಯಿಸಲು ಕೇವಲ ಒಂದೆರಡು ಆಜ್ಞೆಗಳ ಅಗತ್ಯವಿದೆ.

ಪರಿಸರ ಸೆಟಪ್

ಮೊದಲು ನೀವು ಸ್ಥಾಪಿಸಬೇಕಾಗಿದೆ node.js.

ಪ್ಯಾಕೇಜ್ ರಚಿಸಲಾಗುತ್ತಿದೆ

ಪ್ಯಾಕೇಜ್ ರಚಿಸಲು, ನೀವು ಫೈಲ್ ಅನ್ನು ಇರಿಸಬೇಕಾಗುತ್ತದೆ package.json, ಇದು ಈ ಪ್ಯಾಕೇಜ್‌ನ ವಿಷಯಗಳೊಂದಿಗೆ ಡೈರೆಕ್ಟರಿಗೆ ವಿವರಿಸುತ್ತದೆ. ನೀವು ಈ ಕೆಳಗಿನವುಗಳನ್ನು ಮಾಡಬೇಕಾಗಿದೆ:

ನಾವು ಪ್ಯಾಕೇಜ್ ಮಾಡಲು ಬಯಸುವ ಯೋಜನೆಯ ಡೈರೆಕ್ಟರಿಗೆ ಹೋಗಿ.

npm init ಆಜ್ಞೆಯನ್ನು ಚಲಾಯಿಸಿ ಮತ್ತು ಸಂವಾದದ ಸಮಯದಲ್ಲಿ ಅಗತ್ಯವಿರುವ ಮೌಲ್ಯಗಳನ್ನು ನಮೂದಿಸಿ. ಹೆಸರಿಗಾಗಿ, ರಿವರ್ಸ್ ಡೊಮೇನ್ ಸ್ವರೂಪದಲ್ಲಿ ಹೆಸರನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸಿ, ಉದಾಹರಣೆಗೆ com.plarium.somepackage.
ಪ್ಯಾಕೇಜ್ ಹೆಸರನ್ನು ಅನುಕೂಲಕರವಾಗಿ ಪ್ರದರ್ಶಿಸಲು, displayName ಆಸ್ತಿಯನ್ನು package.json ಗೆ ಸೇರಿಸಿ ಮತ್ತು ಅದನ್ನು ಭರ್ತಿ ಮಾಡಿ.

npm js-ಆಧಾರಿತವಾಗಿರುವುದರಿಂದ, ಫೈಲ್ ನಮಗೆ ಅಗತ್ಯವಿಲ್ಲದ ಮುಖ್ಯ ಮತ್ತು ಸ್ಕ್ರಿಪ್ಟ್ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಒಳಗೊಂಡಿದೆ, ಅದನ್ನು ಯೂನಿಟಿ ಬಳಸುವುದಿಲ್ಲ. ಪ್ಯಾಕೇಜ್ ವಿವರಣೆಯನ್ನು ಅಸ್ತವ್ಯಸ್ತಗೊಳಿಸದಂತೆ ಅವುಗಳನ್ನು ತೆಗೆದುಹಾಕುವುದು ಉತ್ತಮ. ಫೈಲ್ ಈ ರೀತಿ ಇರಬೇಕು:

  1. ನಾವು ಪ್ಯಾಕೇಜ್ ಮಾಡಲು ಬಯಸುವ ಯೋಜನೆಯ ಡೈರೆಕ್ಟರಿಗೆ ಹೋಗಿ.
  2. npm init ಆಜ್ಞೆಯನ್ನು ಚಲಾಯಿಸಿ ಮತ್ತು ಸಂವಾದದ ಸಮಯದಲ್ಲಿ ಅಗತ್ಯವಿರುವ ಮೌಲ್ಯಗಳನ್ನು ನಮೂದಿಸಿ. ಹೆಸರಿಗಾಗಿ, ರಿವರ್ಸ್ ಡೊಮೇನ್ ಸ್ವರೂಪದಲ್ಲಿ ಹೆಸರನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸಿ, ಉದಾಹರಣೆಗೆ com.plarium.somepackage.
  3. ಪ್ಯಾಕೇಜ್ ಹೆಸರನ್ನು ಅನುಕೂಲಕರವಾಗಿ ಪ್ರದರ್ಶಿಸಲು, displayName ಆಸ್ತಿಯನ್ನು package.json ಗೆ ಸೇರಿಸಿ ಮತ್ತು ಅದನ್ನು ಭರ್ತಿ ಮಾಡಿ.
  4. npm js-ಆಧಾರಿತವಾಗಿರುವುದರಿಂದ, ಫೈಲ್ ನಮಗೆ ಅಗತ್ಯವಿಲ್ಲದ ಮುಖ್ಯ ಮತ್ತು ಸ್ಕ್ರಿಪ್ಟ್ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಒಳಗೊಂಡಿದೆ, ಅದನ್ನು ಯೂನಿಟಿ ಬಳಸುವುದಿಲ್ಲ. ಪ್ಯಾಕೇಜ್ ವಿವರಣೆಯನ್ನು ಅಸ್ತವ್ಯಸ್ತಗೊಳಿಸದಂತೆ ಅವುಗಳನ್ನು ತೆಗೆದುಹಾಕುವುದು ಉತ್ತಮ. ಫೈಲ್ ಈ ರೀತಿ ಇರಬೇಕು:
    {
     "name": "com.plarium.somepackage",
     "displayName": "Some Package",
     "version": "1.0.0",
     "description": "Some Package Description",
     "keywords": [
       "Unity",
       "UPM"
     ],
     "author": "AUTHOR",
     "license": "UNLICENSED"
    }

  5. ಯೂನಿಟಿಯನ್ನು ತೆರೆಯಿರಿ ಮತ್ತು ಪ್ಯಾಕೇಜ್.ಜೆಸನ್‌ಗಾಗಿ .ಮೆಟಾ ಫೈಲ್ ಅನ್ನು ರಚಿಸಿ (.ಮೆಟಾ ಫೈಲ್‌ಗಳಿಲ್ಲದೆ ಯೂನಿಟಿ ಸ್ವತ್ತುಗಳನ್ನು ನೋಡುವುದಿಲ್ಲ, ಯೂನಿಟಿಗಾಗಿ ಪ್ಯಾಕೇಜ್‌ಗಳನ್ನು ಓದಲು ಮಾತ್ರ ತೆರೆಯಲಾಗುತ್ತದೆ).

ಪ್ಯಾಕೇಜ್ ಕಳುಹಿಸಲಾಗುತ್ತಿದೆ

ಪ್ಯಾಕೇಜ್ ಕಳುಹಿಸಲು ನೀವು ಆಜ್ಞೆಯನ್ನು ಚಲಾಯಿಸಬೇಕು: npm publish --registry *адрес до хранилища пакетов*.

ಯೂನಿಟಿ ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್ ಮೂಲಕ ಪ್ಯಾಕೇಜ್‌ಗಳನ್ನು ಸ್ಥಾಪಿಸುವುದು ಮತ್ತು ನವೀಕರಿಸುವುದು

ಯೂನಿಟಿ ಯೋಜನೆಗೆ ಪ್ಯಾಕೇಜ್ ಸೇರಿಸಲು, ನಿಮಗೆ ಅಗತ್ಯವಿದೆ:

  1. ಫೈಲ್‌ಗೆ ಸೇರಿಸಿ manifest.json ಪ್ಯಾಕೇಜ್‌ಗಳ ಮೂಲದ ಬಗ್ಗೆ ಮಾಹಿತಿ. ಇದನ್ನು ಮಾಡಲು ನೀವು ಆಸ್ತಿಯನ್ನು ಸೇರಿಸುವ ಅಗತ್ಯವಿದೆ scopedRegistries ಮತ್ತು ನಿರ್ದಿಷ್ಟ ಸ್ಕೋಪ್‌ಗಳನ್ನು ಹುಡುಕುವ ಸ್ಕೋಪ್‌ಗಳು ಮತ್ತು ಮೂಲ ವಿಳಾಸವನ್ನು ಸೂಚಿಸಿ.
    
    "scopedRegistries": [
       {
         "name": "Main",
         "url": "адрес до хранилища пакетов",
         "scopes": [
           "com.plarium"
         ]
       }
     ]
    
  2. ಯೂನಿಟಿಗೆ ಹೋಗಿ ಮತ್ತು ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್ ವಿಂಡೋವನ್ನು ತೆರೆಯಿರಿ (ಕಸ್ಟಮ್ ಪ್ಯಾಕೇಜುಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವುದು ಅಂತರ್ನಿರ್ಮಿತ ಪದಗಳಿಗಿಂತ ಭಿನ್ನವಾಗಿರುವುದಿಲ್ಲ).
  3. ಎಲ್ಲಾ ಪ್ಯಾಕೇಜುಗಳನ್ನು ಆಯ್ಕೆಮಾಡಿ.
  4. ನಿಮಗೆ ಅಗತ್ಯವಿರುವ ಪ್ಯಾಕೇಜ್ ಅನ್ನು ಹುಡುಕಿ ಮತ್ತು ಅದನ್ನು ಸೇರಿಸಿ.

ಯೂನಿಟಿ ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್

ಮೂಲಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವುದು ಮತ್ತು ಡೀಬಗ್ ಮಾಡುವುದು

ಯೋಜನೆಗೆ ಮೂಲಗಳನ್ನು ಸಂಪರ್ಕಿಸಲು, ನೀವು ರಚಿಸಬೇಕಾಗಿದೆ ಅಸೆಂಬ್ಲಿ ವ್ಯಾಖ್ಯಾನ ಪ್ಯಾಕೇಜ್ಗಾಗಿ.

ಪ್ಯಾಕೇಜುಗಳನ್ನು ಬಳಸುವುದರಿಂದ ನಿಮ್ಮ ಡೀಬಗ್ ಮಾಡುವ ಆಯ್ಕೆಗಳನ್ನು ಮಿತಿಗೊಳಿಸುವುದಿಲ್ಲ. ಆದಾಗ್ಯೂ, ಯೂನಿಟಿಯಲ್ಲಿ ಪ್ಯಾಕೇಜ್‌ಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವಾಗ, ಪ್ಯಾಕೇಜ್‌ನಲ್ಲಿ ದೋಷ ಸಂಭವಿಸಿದಲ್ಲಿ ಕನ್ಸೋಲ್‌ನಲ್ಲಿನ ದೋಷವನ್ನು ಕ್ಲಿಕ್ ಮಾಡುವ ಮೂಲಕ ನೀವು IDE ಗೆ ಹೋಗಲಾಗುವುದಿಲ್ಲ. ಅಸೆಂಬ್ಲಿ ವ್ಯಾಖ್ಯಾನವನ್ನು ಬಳಸುವಾಗ ಅವುಗಳನ್ನು ಲೈಬ್ರರಿಯಲ್ಲಿ ಸಂಗ್ರಹಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಯೋಜನೆಯಲ್ಲಿ ಸೇರಿಸುವುದರಿಂದ ಯೂನಿಟಿಯು ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳನ್ನು ಪ್ರತ್ಯೇಕ ಫೈಲ್‌ಗಳಾಗಿ ನೋಡುವುದಿಲ್ಲ ಎಂಬುದು ಇದಕ್ಕೆ ಕಾರಣ. ಪ್ರಾಜೆಕ್ಟ್‌ನಿಂದ ಮೂಲಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವಾಗ, IDE ಗೆ ಕ್ಲಿಕ್ ಮಾಡುವುದರಿಂದ ಲಭ್ಯವಿದೆ.

ಸಂಪರ್ಕಿತ ಪ್ಯಾಕೇಜ್ ಹೊಂದಿರುವ ಯೋಜನೆಯಲ್ಲಿ ಸ್ಕ್ರಿಪ್ಟ್:

ಯೂನಿಟಿ ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್
ಕೆಲಸದ ಬ್ರೇಕ್‌ಪಾಯಿಂಟ್‌ನೊಂದಿಗೆ ಪ್ಯಾಕೇಜ್‌ನಿಂದ ಸ್ಕ್ರಿಪ್ಟ್:

ಯೂನಿಟಿ ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್

ಪ್ಯಾಕೇಜ್‌ಗಳಿಗೆ ತುರ್ತು ಪರಿಹಾರಗಳು

ಯೋಜನೆಗೆ ಸೇರಿಸಲಾದ ಯೂನಿಟಿ ಪ್ಯಾಕೇಜುಗಳು ಓದಲು ಮಾತ್ರ, ಆದರೆ ಪ್ಯಾಕೇಜ್ ಸಂಗ್ರಹದಲ್ಲಿ ಸಂಪಾದಿಸಬಹುದು. ಇದನ್ನು ಮಾಡಲು ನಿಮಗೆ ಅಗತ್ಯವಿದೆ:

  1. ಪ್ಯಾಕೇಜ್ ಸಂಗ್ರಹದಲ್ಲಿರುವ ಪ್ಯಾಕೇಜ್‌ಗೆ ಹೋಗಿ.

    ಯೂನಿಟಿ ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್

  2. ಅಗತ್ಯ ಬದಲಾವಣೆಗಳನ್ನು ಮಾಡಿ.
  3. ಫೈಲ್‌ನಲ್ಲಿ ಆವೃತ್ತಿಯನ್ನು ನವೀಕರಿಸಿ package.json.
  4. ಪ್ಯಾಕೇಜ್ ಕಳುಹಿಸಿ npm publish --registry *адрес до хранилища пакетов*.
  5. UPM ಇಂಟರ್ಫೇಸ್ ಮೂಲಕ ಪ್ಯಾಕೇಜ್ ಆವೃತ್ತಿಯನ್ನು ಸರಿಪಡಿಸಿದ ಒಂದಕ್ಕೆ ನವೀಕರಿಸಿ.

ಪ್ಯಾಕೇಜ್ ಆಮದು ಸಂಘರ್ಷಗಳು

ಪ್ಯಾಕೇಜ್‌ಗಳನ್ನು ಆಮದು ಮಾಡುವಾಗ ಕೆಳಗಿನ GUID ಸಂಘರ್ಷಗಳು ಸಂಭವಿಸಬಹುದು:

  1. ಪ್ಯಾಕೇಜ್ - ಪ್ಯಾಕೇಜ್. ಪ್ಯಾಕೇಜ್ ಅನ್ನು ಆಮದು ಮಾಡಿಕೊಳ್ಳುವಾಗ, ಈಗಾಗಲೇ ಸೇರಿಸಲಾದ ಪ್ಯಾಕೇಜ್‌ಗಳು ಅದೇ GUID ಯೊಂದಿಗೆ ಸ್ವತ್ತುಗಳನ್ನು ಹೊಂದಿರುತ್ತವೆ ಎಂದು ಪತ್ತೆಯಾದರೆ, ಆಮದು ಮಾಡಿದ ಪ್ಯಾಕೇಜ್‌ನಿಂದ ಹೊಂದಾಣಿಕೆಯಾಗುವ GUID ಗಳನ್ನು ಹೊಂದಿರುವ ಸ್ವತ್ತುಗಳನ್ನು ಯೋಜನೆಗೆ ಸೇರಿಸಲಾಗುವುದಿಲ್ಲ.
  2. ಪ್ಯಾಕೇಜ್ ಒಂದು ಯೋಜನೆಯಾಗಿದೆ. ಪ್ಯಾಕೇಜ್ ಅನ್ನು ಆಮದು ಮಾಡಿಕೊಳ್ಳುವಾಗ, ಯೋಜನೆಯು ಹೊಂದಾಣಿಕೆಯ GUID ಗಳೊಂದಿಗೆ ಸ್ವತ್ತುಗಳನ್ನು ಹೊಂದಿದೆ ಎಂದು ಪತ್ತೆಯಾದರೆ, ಪ್ಯಾಕೇಜ್‌ನಿಂದ ಸ್ವತ್ತುಗಳನ್ನು ಯೋಜನೆಗೆ ಸೇರಿಸಲಾಗುವುದಿಲ್ಲ. ಆದಾಗ್ಯೂ, ಅವುಗಳನ್ನು ಅವಲಂಬಿಸಿರುವ ಸ್ವತ್ತುಗಳು ಯೋಜನೆಯಿಂದ ಸ್ವತ್ತುಗಳನ್ನು ಬಳಸಲು ಪ್ರಾರಂಭಿಸುತ್ತವೆ.

ಯೋಜನೆಯಿಂದ ಪ್ಯಾಕೇಜ್‌ಗೆ ಸ್ವತ್ತುಗಳನ್ನು ವರ್ಗಾಯಿಸುವುದು

ಯೂನಿಟಿ ತೆರೆದಿರುವಾಗ ನೀವು ಪ್ರಾಜೆಕ್ಟ್‌ನಿಂದ ಪ್ಯಾಕೇಜ್‌ಗೆ ಆಸ್ತಿಯನ್ನು ವರ್ಗಾಯಿಸಿದರೆ, ಅದರ ಕಾರ್ಯವನ್ನು ಸಂರಕ್ಷಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಅವಲಂಬಿತ ಸ್ವತ್ತುಗಳಲ್ಲಿನ ಲಿಂಕ್‌ಗಳು ಪ್ಯಾಕೇಜ್‌ನಿಂದ ಆಸ್ತಿಯನ್ನು ಬಳಸಲು ಪ್ರಾರಂಭಿಸುತ್ತವೆ.

ಪ್ರಮುಖ: ಪ್ರಾಜೆಕ್ಟ್‌ನಿಂದ ಪ್ಯಾಕೇಜ್‌ಗೆ ಸ್ವತ್ತನ್ನು ನಕಲಿಸುವಾಗ, ಮೇಲಿನ ವಿಭಾಗದಲ್ಲಿ ವಿವರಿಸಿದ “ಪ್ಯಾಕೇಜ್ - ಪ್ರಾಜೆಕ್ಟ್” ಸಂಘರ್ಷ ಸಂಭವಿಸುತ್ತದೆ.

ಸಂಘರ್ಷಗಳಿಗೆ ಸಂಭವನೀಯ ಪರಿಹಾರಗಳು

  1. ಘರ್ಷಣೆಗಳನ್ನು ತೊಡೆದುಹಾಕಲು ಎಲ್ಲಾ ಸ್ವತ್ತುಗಳನ್ನು ಆಮದು ಮಾಡಿಕೊಳ್ಳುವಾಗ ನಮ್ಮ ಸ್ವಂತ ಅಲ್ಗಾರಿದಮ್‌ಗಳನ್ನು ಬಳಸಿಕೊಂಡು GUID ಗಳನ್ನು ಮರುಹೊಂದಿಸುವುದು.
  2. ಎಲ್ಲಾ ಸ್ವತ್ತುಗಳನ್ನು ಒಂದು ಯೋಜನೆಗೆ ಸೇರಿಸುವುದು ಮತ್ತು ನಂತರ ಅವುಗಳನ್ನು ಪ್ಯಾಕೇಜ್‌ಗಳಾಗಿ ವಿಭಜಿಸುವುದು.
  3. ಎಲ್ಲಾ ಸ್ವತ್ತುಗಳ GUID ಗಳನ್ನು ಹೊಂದಿರುವ ಡೇಟಾಬೇಸ್ ಅನ್ನು ರಚಿಸುವುದು ಮತ್ತು ಪ್ಯಾಕೇಜ್‌ಗಳನ್ನು ಕಳುಹಿಸುವಾಗ ಮೌಲ್ಯೀಕರಣವನ್ನು ನಡೆಸುವುದು.

ತೀರ್ಮಾನಕ್ಕೆ

ಯುನಿಟಿಯಲ್ಲಿ ಹಂಚಿಕೆಯ ಸಂಪನ್ಮೂಲಗಳನ್ನು ವಿತರಿಸಲು UPM ಒಂದು ಹೊಸ ಪರಿಹಾರವಾಗಿದೆ, ಇದು ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ವಿಧಾನಗಳಿಗೆ ಯೋಗ್ಯವಾದ ಪರ್ಯಾಯವಾಗಿದೆ. ಲೇಖನದಲ್ಲಿ ವಿವರಿಸಿದ ಶಿಫಾರಸುಗಳು ನೈಜ ಪ್ರಕರಣಗಳನ್ನು ಆಧರಿಸಿವೆ. ನೀವು ಅವುಗಳನ್ನು ಉಪಯುಕ್ತವೆಂದು ಭಾವಿಸುತ್ತೇವೆ.

ಮೂಲ: www.habr.com

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ