2014-06-07 5 views
9

IntelliJ IDEA 용 플러그인을 개발 중입니다. 필자가 IDEA에서 플러그인 프로젝트를 작성한 다음 이것을 적절한 META-INF/plugin.xml으로 jar에 패키징하고 jar에서 플러그인을 설치하는 방법입니다.IntelliJ IDEA 플러그인에 라이브러리 종속성을 지정하는 방법은 무엇입니까?

문제는 org.scala-lang:scala-library:2.11.0에 종속성을 추가하고 싶습니다. 이 IDEA 프로젝트에서 라이브러리 종속성으로 지정된이 있지만이 정보를 생성 된 JAR 전달 된 것 결코 것.

어떻게 정보를 IntelliJ IDEA에서 인식 할 수 있습니까?

+0

당신이 "하여이 정보를 결코 의미하지 않는 무엇을 : 당신이 Plugin Extensions 기능 (플러그인이 JetBrains Plugin Repository에서 호스팅되는 가정)을 사용하는 경우, 예를 들어, 자신과 함께 외부 플러그인을 설치하려면 다음 코드를 사용 생성 된 JAR에 따라 전달되는 것 같습니다. " 너 뭐야? 어떤 오류가 있습니까? –

+0

[플러그인 항아리의 문서화 된 구조] (http://confluence.jetbrains.com/display/IDEADEV/IntelliJ+IDEA+Plugin+Structure)는 항아리에 라이브러리 종속성을 지정하는 방법을 제공하지 않습니다. 나는 그것을 할 수있는 다른 방법이 있기를 바라고있다. (어쩌면 플러그인 의존성과 관련된 뭔가 영리한). – Owen

+0

Maven을 사용하고 있습니까? –

답변

5

필자가 이해하는 한, 일부 라이브러리 (예 : scala 라이브러리)를 플러그인과 함께 제공하려고합니다. 이것은 매우 간단합니다.

  1. 프로젝트 설정으로 이동하여 모듈을 선택하고 종속성 탭으로 이동하십시오. 번들하려는 라이브러리의 범위를 '컴파일'로 설정하십시오. 이 예제에서는 'checker-framework'라이브러리입니다. 'groovy-2.3.6'라이브러리는 해당 범위가 '제공됨'으로 설정되어 번들로 제공되지 않습니다. 변경 사항을 저장하다.

    Module dependencies tab

  2. Prepare plugins for deployment action

  3. 배포

    에 대한 플러그인을 준비 그런 다음 배포 할 준비가 압축 플러그인을 얻었다 (REPO에 업로드 또는 로컬 설치) 프로젝트의 루트에. 모든 필요한 병과 함께 lib 폴더가 포함됩니다.

0

공식적으로 지원되는 플러그인 의존성 관리 솔루션은 Gradle을의 dependencies 또는 intellij.plugins 진입 점을 경유하여 gradle-intellij-plugin로 Gradle을 사용하는 것입니다.

buildscript { 
    repositories { 
     mavenCentral() 
    } 
} 

dependencies { 
    compile("org.scala-lang:scala-library:2.11.0") 
} 

intellij.plugins 엔트리 포인트가에 이슈를 추가 할 것입니다 : 당신이 유물 (. 예 메이븐 중앙에서 호스트)에 대한 종속성을 추가하려는 경우, 당신은 일반적으로 Gradle을 기반 프로젝트에서하는 것처럼 dependencies을 구성 현재 프로젝트뿐 아니라 plugin.xml 파일에 <depends> 태그가 포함되어 있습니다.

plugins { 
    id "org.jetbrains.intellij" version "0.2.13" 
} 

intellij { 
    //... 
    plugins "org.intellij.scala:2017.2.638" 
}