{"id":714,"date":"2016-03-08T07:11:46","date_gmt":"2016-03-08T10:11:46","guid":{"rendered":"https:\/\/www.erudio.com.br\/blog\/?p=714"},"modified":"2022-12-21T10:39:53","modified_gmt":"2022-12-21T13:39:53","slug":"usando-codigo-groovy-o-java-com-esteroides-juntamente-com-codigo-java-em-um-projeto-com-spring-boot","status":"publish","type":"post","link":"https:\/\/www.erudio.com.br\/blog\/usando-codigo-groovy-o-java-com-esteroides-juntamente-com-codigo-java-em-um-projeto-com-spring-boot\/","title":{"rendered":"Usando c\u00f3digo Groovy (o Java com ester\u00f3ides) juntamente com c\u00f3digo Java em um projeto com Spring Boot"},"content":{"rendered":"<p>Mais um post em que explico como integrar c\u00f3digo <strong>Groovy<\/strong> junto ao seu c\u00f3digo <strong>Java<\/strong> em um projeto com <strong>Spring Boot<\/strong> usando o gerenciador de dependencias <strong>Maven<\/strong>. No outro post usamos o &#8216;<strong>Groovy Eclipse Compiler Plugin<\/strong>&#8216; mas nunca consegui fazer ele funcionar corretamente com o Spring Boot ent\u00e3o o substituimos pelo &#8216;<strong>GMaven Plugin<\/strong>&#8216;. Al\u00e9m disso o &#8216;<strong>Groovy Eclipse Compiler Plugin<\/strong>&#8216; tem problemas de backward compatibility com o <strong>Java 8<\/strong> diferentemente do &#8216;<strong>GMaven Plugin<\/strong>&#8216;.<br \/>\nEnt\u00e3o m\u00e3os a obra, adicione as configura\u00e7\u00f5es abaixo ao seu <em>pom.xml<\/em> e tenha todo poder do <strong>Groovy<\/strong> junto ao seu c\u00f3digo <strong>Java<\/strong>.<\/p>\n<pre class=\"brush: xml; title: ; notranslate\" title=\"\">\n&lt;!-- Adicione o Groovy \u00e0s depend\u00eancias do seu projeto --&gt;\n&lt;dependencies&gt;\n    &lt;dependency&gt;\n        &lt;groupid&gt;org.codehaus.groovy&lt;\/groupid&gt;\n        &lt;artifactid&gt;groovy-all&lt;\/artifactid&gt;\n        &lt;scope&gt;compile&lt;\/scope&gt;\n    &lt;\/dependency&gt;\n&lt;\/dependencies&gt;       \n\n    .\n    .\n    .       \n\n&lt;!-- Ser\u00e1 necess\u00e1rio fazer algumas mudan\u00e7as no seu processo de build --&gt;     \n&lt;build&gt;\n    &lt;resources&gt;\n        &lt;resource&gt;\n            &lt;directory&gt;${basedir}\/src\/main\/resources&lt;\/directory&gt;\n        &lt;\/resource&gt;\n    &lt;\/resources&gt;\n\n    &lt;!-- Adicione o GMaven Plugin --&gt;\n    &lt;plugins&gt;\n        &lt;plugin&gt;\n            &lt;groupid&gt;org.codehaus.gmaven&lt;\/groupid&gt;\n            &lt;artifactid&gt;gmaven-plugin&lt;\/artifactid&gt;\n            &lt;version&gt;1.5&lt;\/version&gt;\n            &lt;configuration&gt;\n                &lt;providerselection&gt;2.0&lt;\/providerselection&gt;\n            &lt;\/configuration&gt;\n\n            &lt;!-- Adicione as dependencias 'gmaven-runtime-2.0' e 'groovy-all' ao plugin --&gt;\n            &lt;dependencies&gt;\n                &lt;dependency&gt;\n                    &lt;groupid&gt;org.codehaus.gmaven.runtime&lt;\/groupid&gt;\n                    &lt;artifactid&gt;gmaven-runtime-2.0&lt;\/artifactid&gt;\n                    &lt;version&gt;1.5&lt;\/version&gt;\n                &lt;\/dependency&gt;\n                &lt;dependency&gt;\n                    &lt;groupid&gt;org.codehaus.groovy&lt;\/groupid&gt;\n                    &lt;artifactid&gt;groovy-all&lt;\/artifactid&gt;\n                    &lt;version&gt;2.1.8&lt;\/version&gt;\n                &lt;\/dependency&gt;\n            &lt;\/dependencies&gt;\n\n            &lt;!-- Defina suas metas de execu\u00e7\u00e3o --&gt;\n            &lt;executions&gt;\n                &lt;execution&gt;\n                    &lt;goals&gt;\n                        &lt;goal&gt;generateStubs&lt;\/goal&gt;\n                        &lt;goal&gt;compile&lt;\/goal&gt;\n                        &lt;goal&gt;generateTestStubs&lt;\/goal&gt;\n                        &lt;goal&gt;testCompile&lt;\/goal&gt;\n                    &lt;\/goals&gt;\n                &lt;\/execution&gt;\n            &lt;\/executions&gt;\n        &lt;\/plugin&gt;\n\n        &lt;!-- Adicione o plugin do 'spring-boot-maven-plugin' --&gt;         \n        &lt;plugin&gt;\n            &lt;groupid&gt;org.springframework.boot&lt;\/groupid&gt;\n            &lt;artifactid&gt;spring-boot-maven-plugin&lt;\/artifactid&gt;\n        &lt;\/plugin&gt;\n\n    &lt;\/plugins&gt;\n&lt;\/build&gt;\n<\/pre>\n<p>Caso voc\u00ea tenha d\u00favidas poder\u00e1 se basear em um projeto completo no Github o <a style=\"pointer-events: none;\" title=\"Erudio API OAUTH2\" href=\"https:\/\/github.com\/leandrocgsi\/erudio-api-oauth2\">Erudio API OAUTH2<\/a> utilizando essas tecnologias juntas. Lets Groovy guys, bons estudos.<\/p>\n<h2>Treinamentos relacionados com este post<\/h2>\n<p><a href=\"https:\/\/pub.erudio.com.br\/kr\/blog_rest_spring_java\" target=\"_blank\" rel=\"noopener\"><\/p>\n<p><img decoding=\"async\" style=\"max-width: 100%;\" title=\"REST API's RESTFul do 0 \u00e0  AWS com Spring Boot 3, Java e Docker\" src=\"https:\/\/raw.githubusercontent.com\/leandrocgsi\/blog-images\/main\/07-rest-spring-java.png\"><br \/>\n<\/a><\/p>\n<p><a href=\"https:\/\/pub.erudio.com.br\/kr\/blog_rest_asp_net\" target=\"_blank\" rel=\"noopener\"><\/p>\n<p><img decoding=\"async\" style=\"max-width: 100%;\" title=\"REST API's RESTFul do 0 \u00e0 Azure com ASP.NET Core 5 e Docker\" src=\"https:\/\/raw.githubusercontent.com\/leandrocgsi\/blog-images\/main\/01-rest-asp.png\"><br \/>\n<\/a><\/p>\n<p><a href=\"https:\/\/pub.erudio.com.br\/kr\/blog_rest_spring_kotlin\" target=\"_blank\" rel=\"noopener\"><br \/>\n        <img decoding=\"async\" style=\"max-width: 100%;\" title=\"REST API's RESTFul do 0 \u00e0 AWS com Spring Boot 3, Kotlin e Docker\" src=\"https:\/\/raw.githubusercontent.com\/leandrocgsi\/blog-images\/main\/18-rest-spring-kotlin.png\"><br \/>\n<\/a><\/p>\n<p><a href=\"https:\/\/pub.erudio.com.br\/kr\/blog_microservices_java\" target=\"_blank\" rel=\"noopener\"><br \/>\n        <img decoding=\"async\" style=\"max-width: 100%;\" title=\"Microservices do 0 com Spring Cloud, Spring Boot e Docker\" src=\"https:\/\/raw.githubusercontent.com\/leandrocgsi\/blog-images\/main\/14-microservices-java.png\"><br \/>\n<\/a><\/p>\n<p><a href=\"https:\/\/pub.erudio.com.br\/kr\/blog_microservices-dotnet\" target=\"_blank\" rel=\"noopener\"><br \/>\n        <img decoding=\"async\" style=\"max-width: 100%;\" title=\"Arquitetura de Microsservi\u00e7os do 0 com ASP.NET, .NET 6 e C#\" src=\"https:\/\/raw.githubusercontent.com\/leandrocgsi\/blog-images\/main\/15-microservices-dotnet.png\"><br \/>\n<\/a><\/p>\n<p><a href=\"https:\/\/pub.erudio.com.br\/kr\/blog_ms_kotlin\" target=\"_blank\" rel=\"noopener\"><br \/>\n        <img decoding=\"async\" style=\"max-width: 100%;\" title=\"Microsservi\u00e7os do 0 com Spring Cloud, Kotlin e Docker\" src=\"https:\/\/raw.githubusercontent.com\/leandrocgsi\/blog-images\/main\/22-ms-kotlin.png\"><br \/>\n<\/a><\/p>\n<p><a href=\"https:\/\/pub.erudio.com.br\/kr\/blog_docker\" target=\"_blank\" rel=\"noopener\"><br \/>\n        <img decoding=\"async\" style=\"max-width: 100%;\" title=\"Docker do 0 \u00e0 Maestria: Cont\u00eaineres Desmistificados mais 3 B\u00d4NUS\" src=\"https:\/\/raw.githubusercontent.com\/leandrocgsi\/blog-images\/main\/09-docker.png\"><br \/>\n<\/a><\/p>\n<p><a href=\"https:\/\/pub.erudio.com.br\/kr\/blog_docker_para_aws\" target=\"_blank\" rel=\"noopener\"><br \/>\n        <img decoding=\"async\" style=\"max-width: 100%;\" title=\"Docker para Amazon AWS Implante Apps Java e .NET com Travis CI\" src=\"https:\/\/raw.githubusercontent.com\/leandrocgsi\/blog-images\/main\/10-docker-to-aws.png\"><br \/>\n<\/a><\/p>\n<p><a href=\"https:\/\/pub.erudio.com.br\/kr\/blog_kotlin\" target=\"_blank\" rel=\"noopener\"><br \/>\n        <img decoding=\"async\" style=\"max-width: 100%;\" title=\"Kotlin para DEVs Java: Aprenda a Linguagem Padr\u00e3o do Android\" src=\"https:\/\/raw.githubusercontent.com\/leandrocgsi\/blog-images\/main\/20-kotlin.png\"><br \/>\n<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Mais um post em que explico como integrar c\u00f3digo Groovy junto ao seu c\u00f3digo Java em um projeto com Spring Boot usando o gerenciador de dependencias Maven. No outro post usamos o &#8216;Groovy Eclipse Compiler Plugin&#8216; mas nunca consegui fazer ele funcionar corretamente com o Spring Boot ent\u00e3o o substituimos pelo &#8216;GMaven Plugin&#8216;. Al\u00e9m disso [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[10,35,39,44,57,103,104],"tags":[131,165,171,230,231],"_links":{"self":[{"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/posts\/714"}],"collection":[{"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/comments?post=714"}],"version-history":[{"count":3,"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/posts\/714\/revisions"}],"predecessor-version":[{"id":1503,"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/posts\/714\/revisions\/1503"}],"wp:attachment":[{"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/media?parent=714"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/categories?post=714"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.erudio.com.br\/blog\/wp-json\/wp\/v2\/tags?post=714"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}