IDEA рдореЗрдВ рдПрдХ рдорд▓реНрдЯреА-рдореЙрдбреНрдпреВрд▓ рдЧреНрд░реИрдбрд▓ рд╕реНрдкреНрд░рд┐рдВрдЧрдмреВрдЯ + рдХреЛрдгреАрдп рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдирд╛

рдЕрдХреНрд╕рд░ рдореЗрд░реЗ рдЕрднреНрдпрд╛рд╕ рдореЗрдВ, рд╕реНрдкреНрд░рд┐рдВрдЧ + рдХреЛрдгреАрдп рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдореИрдВ IntelliJ IDEA рд╡рд┐рдХрд╛рд╕ рдХреЗ рдорд╛рд╣реМрд▓ рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдореЗрдВ рдЕрдкрдиреЗ рдЕрдиреБрднрд╡ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред


рдПрдХ рдЦрд╛рд▓реА рдЧреНрд░реЗрдбреЗрд▓ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдПрдВ


рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, IDEA рдореЗрдВ рдПрдХ рдЦрд╛рд▓реА рдЧреНрд░реЗрдбрд▓ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдПрдВ, рдЬрдмрдХрд┐ рд╕рднреА рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдФрд░ рд░реВрдкрд░реЗрдЦрд╛рдУрдВ рдХреЛ рдЕрдирдЪреЗрдХ рдХрд░реЗрдВред




рд╣рдорд╛рд░реА рдХрд▓рд╛рдХреГрддрд┐рдпрд╛рдБ "рдбреЗрдореЛ" рдФрд░ рд╕рдореВрд╣ "com.habr" рд╣реЛрдиреЗ рджреЗрдВред рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж, settings.gradle рдФрд░ build.gradle рдлрд╛рдЗрд▓реЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЙрддреНрдкрдиреНрди рд╣реЛ рдЬрд╛рдПрдВрдЧреА:


build.gradle

group 'com.habr' version '1.0' 

settings.gradle

  rootProject.name = 'demo' 

рд╕реНрдкреНрд░рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рдореЙрдбреНрдпреВрд▓ рдмрдирд╛рдПрдВ


рдЕрдЧрд▓рд╛, рд╣рдо рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдПрдХ рдореЙрдбреНрдпреВрд▓ рдЬреЛрдбрд╝реЗрдВрдЧреЗ рдЬреЛ рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдХреЗ рд╕рд░реНрд╡рд░ рднрд╛рдЧ рдХреА рдореЗрдЬрдмрд╛рдиреА рдХрд░реЗрдЧрд╛, рдЕрд░реНрдерд╛рддреНред рд╡рд╕рдВрддред




рдЗрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдмрдирд╛рддреЗ рд╕рдордп, рд╣рдо рд╕реНрдкреНрд░рд┐рдВрдЧ рдЕрдирд┐рд▓рд┐рдЬрд╝реНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред




рдЖрдЗрдП рдореЙрдбреНрдпреВрд▓ "рдбреЗрдореЛ-рд╕рд░реНрд╡рд░" рдХрд╛ рдирд╛рдо рджреЗрдВ, рдЧреНрд░реЗрдбрд▓ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдкреНрд░рдХрд╛рд░, рд╕рдореВрд╣ com.habr рдФрд░ рдореБрдЦреНрдп рдкреИрдХреЗрдЬ org.habr.demo рдХрд╛ рдирд╛рдо рдЗрдВрдЧрд┐рдд рдХрд░реЗрдВред




рдЕрдЧрд▓рд╛, рдЖрдкрдХреЛ рд╕реНрдкреНрд░рд┐рдВрдЧ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЗ рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рдШрдЯрдХреЛрдВ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдореИрдВрдиреЗ рдХреЗрд╡рд▓ "рд╡реЗрдм" рдХрд╛ рдЪрдпрди рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рдЕрдкрдиреА рдЬрд╝рд░реВрд░рдд рдХреА рд╣рд░ рдЪреАрдЬрд╝ рдХрд╛ рдЪрдпрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред




рдбреЗрдореЛ-рд╕рд░реНрд╡рд░ рдореЙрдбреНрдпреВрд▓ рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЗрд╕рдореЗрдВ 2 рдлрд╛рдЗрд▓реЗрдВ рдмрдирд╛рдИ рдЧрдИ рдереАрдВ: build.gradle рдФрд░ settings.gradleред рдЗрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЗ settings.gradle рд╕реЗ, рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕.gradle рдлрд╝рд╛рдЗрд▓ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рдирд┐рдореНрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдФрд░ рдореЙрдбреНрдпреВрд▓ рдХреЗ settings.gradle рдХреЛ рд╣рдЯрд╛ рджреЗрдВред



 pluginManagement { repositories { gradlePluginPortal() } } 

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдкрдХреЛ рддреИрдпрд╛рд░ рдХрд┐рдП рдЧрдП рдореЙрдбреНрдпреВрд▓ рдХреЛ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╣рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ:


settings.gradle
  pluginManagement { repositories { gradlePluginPortal() } } rootProject.name = 'demo' include 'demo-server' 

рдЙрд╕рдХреЗ рдмрд╛рдж, рд╣рдо рдбреЗрдореЛ-рд╕рд░реНрд╡рд░ рдореЙрдбреНрдпреВрд▓ рдХреЗ build.gradle рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдирд┐рдореНрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВ:


  group = 'com.habr' version = '0.0.1' 

рдЗрд╕ рдкрд░, рдкрд╣рд▓реЗ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЛ рдкреВрд░рд╛ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдо рдЗрд╕реЗ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдВрдЧреЗред



рдХреЛрдгреАрдп рдХреЗ рд▓рд┐рдП рдПрдХ рдореЙрдбреНрдпреВрд▓ рдмрдирд╛рдПрдБ


рд╣рдо java gradle рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ Demo-ui рдореЙрдбреНрдпреВрд▓ рдмрдирд╛рддреЗ рд╣реИрдВред




рдЖрдЗрдП рдирд┐рд░реНрдорд┐рдд рдореЙрдбреНрдпреВрд▓ "рдбреЗрдореЛ-рдпреВрдЖрдИ" рдХрд╛ рдирд╛рдо рджреЗрдВред




рдмрдирд╛рдИ рдЧрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ, рдЖрдкрдХреЛ src рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЗрд╕ рдСрдкрд░реЗрд╢рди рдХреЛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЗрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд░реВрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдЯрд░реНрдорд┐рдирд▓ рдЦреЛрд▓реЗрдВред




рдЦреБрд▓рдиреЗ рд╡рд╛рд▓реЗ рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ, рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдБ:


 ng new demo-ui 

рдХрдорд╛рдВрдб рдХреЛрдгреАрдп рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдЧрд╛, рдФрд░ рдбреЗрдореЛ-рдпреВрдЖрдИ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдЕрдВрджрд░ рд╕рдорд╛рди рдирд╛рдо рд╡рд╛рд▓рд╛ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдмрдирд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ред




рдиреЛрдб-рдореЙрдбреНрдпреВрд▓ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдмрдирд╛рдП рдЧрдП рдлрд╝реЛрд▓реНрдбрд░ рдХреА рд╕рднреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдореЙрдбреНрдпреВрд▓ рдХреА рдЬрдбрд╝ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рд╕реНрд╡рдпрдВ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред




рдЕрдм рд╣рдо рдЕрд╕реЗрдВрдмрд▓реА рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВрдЧреЗ, рдЗрд╕рдХреЗ рд▓рд┐рдП рд╣рдо рдбреЗрдореЛ-рдпреВрдЖрдИ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдмрд┐рд▓реНрдб.рдЧреНрд░реЗрдб рдХреЛ рдирд┐рдореНрди рдлреЙрд░реНрдо рдореЗрдВ рд▓рд╛рддреЗ рд╣реИрдВ:


  plugins { id 'java' id "com.moowork.node" version "1.3.1" } node { version = '10.14.1' npmVersion = '6.4.1' download = true } jar.dependsOn 'npm_run_build' jar { // "demo-ui" -  Angular ,    ng new from 'dist/demo-ui' into 'static' } 

рдореЙрдбреНрдпреВрд▓ рддреИрдпрд╛рд░ рд╣реИред



рд╣рдо рдореЙрдбреНрдпреВрд▓ рдХреЛ рдмрд╛рдВрдзрддреЗ рд╣реИрдВ


рдпрд╣ рдХреЗрд╡рд▓ рдбреЗрдореЛ-рд╕рд░реНрд╡рд░ рдореЙрдбреНрдпреВрд▓ рдХреЗ build.gradle рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдиреА рд╣реБрдИ рд╣реИред


 implementation project(':demo-ui') 


рдирддреАрдЬрддрди, рд╣рдореЗрдВ "рдбреЗрдореЛ-рд╕рд░реНрд╡рд░" рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд build.gradle рдорд┐рд▓рддреЗ рд╣реИрдВ:


  plugins { id 'org.springframework.boot' version '2.1.5.RELEASE' id 'java' } apply plugin: 'io.spring.dependency-management' sourceCompatibility = '1.8' repositories { mavenCentral() } dependencies { implementation project(':demo-ui') implementation 'org.springframework.boot:spring-boot-starter-web' testImplementation 'org.springframework.boot:spring-boot-starter-test' } 

рд▓рд╛рдВрдЪ


рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╕ рдЧреНрд░реЗрдбрд▓ рдХрд╛рд░реНрдп рдХреЛ рдЪрд▓рд╛рдПрдВред



рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдпрд╛ рдФрд░ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдЗрд╕реЗ рдПрдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдЦреЛрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред



рдареАрдХ рд╣реИ, рдЕрдЧрд░ рдЖрдк рдПрдХ рдЬрд╛рд░ рдлрд╝рд╛рдЗрд▓ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдмрд╕ рдирд┐рд░реНрдорд╛рдг рдХрд╛рд░реНрдп рдХреЛ рдЪрд▓рд╛рдПрдВред




рдЕрд╕реЗрдВрдмрд▓ рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓ рдбреЗрдореЛ-рд╕рд░реНрд╡рд░ / рдмрд┐рд▓реНрдб / рд▓рд┐рдмрд╛рд╕ рдореЗрдВ рдЖрдкрдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣реА рд╣реЛрдЧреАред

Source: https://habr.com/ru/post/hi454198/


All Articles