LabVIEW 프로젝트에서 의존성 관리하기
- 업데이트 날짜:2025-08-27
- 2분 (읽기 시간)
의존성을 사용하여 다음 아이템과 같이 타겟 아래의 VI가 요구하는 아이템을 볼 수 있습니다:
- 다른 VI
- 공유 라이브러리(DLL)
- LabVIEW 프로젝트 라이브러리
LabVIEW 프로젝트의 각 타겟은 의존성을 포함합니다. LabVIEW는 프로젝트의 각 아이템이 필요로하는 파일을 자동으로 식별하고, 이러한 파일을 의존성에 포함시킵니다. LabVIEW는 의존성을 다음 세 개의 폴더에 넣습니다: vi.lib, user.lib, 메모리의 아이템.
의존성 리스트 사용하기
아이템을 직접 의존성에 추가할 수 없습니다. 의존성은 프로젝트에 아이템을 추가, 제거 또는 저장하면 자동적으로 업데이트됩니다. 예를 들어, SubVI를 포함하는 VI를 타겟에 추가하는 경우, LabVIEW는 SubVI를 의존성에 추가합니다. 그러나, 타겟 아래에 SubVI를 수동으로 추가하는 경우, 해당 아이템은 의존성에 나타나지 않습니다. 의존 파일을 이동하거나 이름을 만드는 경우, 잘못된 의존성을 방지하도록 주의하십시오.
프로젝트의 현재 의존성을 보려면, 의존성에서 마우스 오른쪽 버튼을 클릭한 후 바로 가기 메뉴에서 새로 고침을 선택합니다. 의존성 새로 고침 메소드를 사용하여 프로그램적으로 의존성을 새로 고칠 수도 있습니다.
| 노트 프로젝트 탐색기 윈도우에서 의존성을 숨긴 경우, 프로젝트 탐색기 윈도우에서 이에 접근하려면 다시 아이템을 디스플레이해야 합니다. |
LabVIEW는 SubVI를 반복적으로 추적합니다. LabVIEW는 공유 라이브러리(DLL)를 반복적으로 추적하지 않습니다. 예를 들어, a.vi가 b.dll을 정적으로 호출하고 b.dll이 c.dll을 정적으로 호출하는 경우, LabVIEW는 b.dll만을 의존적인 아이템으로 고려합니다. 프로젝트에서 c.dll을 관리하려면, 반드시 c.dll을 타겟 아래에 추가해야 합니다.
의존성이 프로젝트 라이브러리의 일부인 경우, LabVIEW는 의존성아래의 전체 프로젝트 라이브러리를 포함합니다.
새 아이템을 의존성 아래에 생성할 수 없습니다. 프로젝트 탐색기 윈도우의 다른 위치에서 아이템을 끌어서 의존성 노드에 놓을 수 없습니다.
다이나믹 의존성 포함하기
프로젝트를 열면, VI가 다이나믹하게 호출하는 아이템은 의존성 아래에 나타나지 않습니다. 호출자를 실행하면, 다이나믹하게 로드된 아이템은 의존성 아래의 메모리의 아이템에 나타납니다. 이 아이템을 타겟 아래에 수동으로 추가하면 프로젝트에서 아이템을 관리할 수 있습니다.
다이나믹하게 로드된 파일은 프로젝트 내에서 호출자에 의해 정적으로 링크되지 않기 때문에, 다이나믹하게 로드된 파일에의 경로를 변경하면 프로젝트가 파일을 로드하지 않을 수도 있습니다. 다이나믹하게 로드된 파일이 올바른 위치에 있도록 하려면 다음 가이드라인을 따르십시오:
- 파일을 별도의 폴더에 모아 놓습니다.
- 상대 경로를 사용하여 파일을 참조합니다.
- 프로젝트를 이동해야 하거나 어플리케이션을 배포해야 하는 경우, 다이나믹한 의존성을 모아놓은 폴더를 포함하도록 합니다.
공유 의존성 관리하기
코드를 공유하는 어플리케이션을 만드는 경우, 이 코드를 변경하면 다른 호출자에 의도하지 않은 영향을 미칠 수 있습니다. 공유 코드가 있는 의존성을 관리할 때는 다음 가이드라인을 따르십시오:
- 여러 어플리케이션이 공유하는 코드의 변경을 최소화합니다.
- 공유 코드를 변경해야 할 경우, 테스트와 통합 목적으로 로컬 복사본을 만듭니다.
- 공유 코드 변경 사항을 관리하고 통합하도록 합니다.
- 소스 코드 컨트롤을 사용합니다.