คำถามติดแท็ก groovy

Groovy เป็นภาษาการเขียนโปรแกรมเชิงวัตถุสำหรับแพลตฟอร์ม Java เป็นภาษาไดนามิกที่มีคุณสมบัติคล้ายกับ Python, Ruby, Perl และ Smalltalk สามารถใช้เป็นภาษาสคริปต์สำหรับแพลตฟอร์ม Java

3
เกิดอะไรขึ้นกับ Groovy multi-line String?
สคริปต์ Groovy ทำให้เกิดข้อผิดพลาด: def a = "test" + "test" + "test" ข้อผิดพลาด: No signature of method: java.lang.String.positive() is applicable for argument types: () values: [] แม้ว่าสคริปต์นี้จะทำงานได้ดี: def a = new String( "test" + "test" + "test" ) ทำไม?
106 string  groovy  multiline 

1
Clojure 1.2.1 / 1.3 / 1.4 'proxy ที่สร้างใน Grails 2.0.0 runtime ล้มเหลว 1.2.0 ไม่เป็นไร
ผมทำงานเกี่ยวกับการขยายปลั๊กอิน Grails ClojureในGrails 2.0.0 (และ 2.1.0-ภาพนิ่ง) และฉันต้องการที่จะปรับปรุงมันClojure 1.3.0และเพิ่มclojure.tools.logging Clojure แสดงข้อยกเว้นระหว่างการรวบรวม พร็อกซีของฟังก์ชันล็อกสตรีมของ a ByteArrayOutputStreamin clojure.tools.logging: ClassCastException: clojure.asm.Type cannot be cast to clojure.lang.IFn ( https://gist.github.com/a6ae681c37091a3d2379 ) ฉันไปลบclojure.tools.loggingและเขียนพร็อกซีที่ถูกถอดออกของObject: (proxy [java.lang.Object] [] (toString [] "proxy's toString")) และมันก็โยนClassCastExceptionข้อความและข้อความนั้นออกไป ฉันพยายามพิมพ์macroexpand-1ของพร็อกซีและได้รับสิ่งเดียวกัน ฉันเปลี่ยนกลับเป็น Clojure 1.2.0 และพร็อกซีทำงานได้ดีอีกครั้ง ฉันลองใช้จำนวน 1.4.0 และมีพฤติกรรมเช่นเดียวกับ 1.3.0 1.2.1 ยังมีข้อยกเว้นบางอย่าง แต่ฉันพยายามตี 1.3.0 ดังนั้นฉันจึงไม่ได้ใช้เวลากับมันมากนัก สแต็คร่องรอยจุดที่ 'ฟังก์ชั่น GEN-วิธีการที่กำหนดไว้ในหนึ่งในช่วยให้รูปแบบของในgenerate-proxycore_proxy.clj …
103 grails  groovy  clojure  proxy 

3
มีวิธีที่ดีกว่าในการเขียนเช็คว่างนี้หรือไม่
ฉันต้องทำการตรวจสอบค่าว่าง / ค่าว่างในบางรหัสก่อนที่จะใช้ตรรกะบางอย่าง ฉันมีรายการด้านล่างเพราะฉันรู้สึกว่า!members?.emptyไม่ถูกต้อง มีวิธีที่ง่ายกว่าในการเขียนต่อไปนี้หรือไม่? if (members && !members.empty) { // Some Work }
102 grails  groovy 

7
ไฮเบอร์เนต: สร้าง / อัปเดตตารางฐานข้อมูลโดยอัตโนมัติตามคลาสเอนทิตี
ฉันมีคลาสเอนทิตีต่อไปนี้ (ใน Groovy): import javax.persistence.Entity import javax.persistence.Id import javax.persistence.GeneratedValue import javax.persistence.GenerationType @Entity public class ServerNode { @Id @GeneratedValue(strategy = GenerationType.AUTO) Long id String firstName String lastName } และ persistence.xml ของฉัน: <?xml version="1.0" encoding="UTF-8"?> <persistence xmlns="http://java.sun.com/xml/ns/persistence" version="1.0"> <persistence-unit name="NewPersistenceUnit"> <provider>org.hibernate.ejb.HibernatePersistence</provider> <properties> <property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/Icarus"/> <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/> <property name="hibernate.connection.username" value="root"/> <property …
101 java  mysql  hibernate  jpa  groovy 

5
ไม่พบเมธอด leftShift () สำหรับอาร์กิวเมนต์หลังจากอัปเดต Studio 3.4
หลังจากอัปเดต3.4เวอร์ชันสตูดิโอและ Gradle เป็น5.1.1ฉันได้รับข้อผิดพลาดในงานของฉันเนื่องจากไม่พบวิธีการ leftShift () งานของฉัน: task incrementBetaVersion << { println("Incrementing Beta Version Number...") incrementVersionNumber('BetaVersionNumber') println("Incrementing Beta Version Number...") incrementVersionName('BetaVersionName') } ฉันได้รับข้อผิดพลาดสำหรับตัวดำเนินการกะด้านซ้าย<<ในบรรทัด จะแก้ไขข้อผิดพลาดนี้ได้อย่างไร?

3
ฉันจะนำเข้าสคริปต์ Gradle หนึ่งไปยังอีกสคริปต์หนึ่งได้อย่างไร
ฉันมีสคริปต์ gradle ที่ซับซ้อนซึ่งรวบรวมฟังก์ชันการทำงานรอบ ๆ การสร้างและปรับใช้โครงการ netbeans จำนวนมากกับสภาพแวดล้อมต่างๆ สคริปต์ทำงานได้ดีมาก แต่โดยพื้นฐานแล้วมันถูกกำหนดค่าผ่านแผนที่ครึ่งโหลที่มีข้อมูลโครงการและสภาพแวดล้อม ฉันต้องการแยกงานออกเป็นไฟล์อื่นเพื่อที่ฉันจะได้กำหนดแผนที่ของฉันในไฟล์บิลด์ธรรมดาและนำเข้างานจากไฟล์อื่นได้ ด้วยวิธีนี้ฉันสามารถใช้งานหลักเดียวกันกับโครงการต่างๆและกำหนดค่าโครงการเหล่านั้นด้วยชุดแผนที่ง่ายๆ ใครช่วยบอกฉันหน่อยได้ไหมว่าฉันจะนำเข้าไฟล์ gradle หนึ่งไฟล์ไปยังอีกไฟล์หนึ่งในลักษณะเดียวกับงานของ Ant ฉันลากเส้นเอกสารของ Gradle จนไม่มีประโยชน์ ข้อมูลเพิ่มเติม หลังจากคำตอบของทอมด้านล่างฉันคิดว่าฉันจะพยายามชี้แจงว่าฉันหมายถึงอะไร โดยทั่วไปฉันมีสคริปต์ gradle ซึ่งรันโปรเจ็กต์ย่อยจำนวนมาก อย่างไรก็ตามโครงการย่อยเป็นโครงการ Netbeans ทั้งหมดและมาพร้อมกับสคริปต์สร้างมดของตัวเองดังนั้นฉันจึงมีงานที่ต้องทำอย่างค่อยเป็นค่อยไปเพื่อเรียกสิ่งเหล่านี้ ปัญหาของฉันคือฉันมีการกำหนดค่าบางอย่างที่ด้านบนของไฟล์เช่น: projects = [ [name:"MySubproject1", shortname: "sub1", env:"mainEnv", cvs_module="mod1"], [name:"MySubproject2", shortname: "sub2", env:"altEnv", cvs_module="mod2"] ] จากนั้นฉันสร้างงานต่างๆเช่น: projects.each({ task "checkout_$it.shortname" << { // Code to …
101 java  ant  groovy  build  gradle 

4
“ Groovy” และ“ Grails” คืออะไรและสร้างขึ้นโดยใช้แอปพลิเคชันประเภทใด
ทุกวันนี้ฉันได้ยินเกี่ยวกับ "Groovy on Grails" มากมายและฉันต้องการทราบข้อมูลเพิ่มเติม: Groovy คืออะไร? Grails คืออะไร? แอปพลิเคชันประเภทใดที่สร้างขึ้นโดยใช้ Groovy บน Grails
100 grails  groovy 

12
รวมถึงบทที่น่าสนใจในอีกเรื่องหนึ่ง
ฉันได้อ่านวิธีการนำเข้าไฟล์ groovy ในสคริปต์ groovy อื่นแล้ว ฉันต้องการกำหนดฟังก์ชันทั่วไปในไฟล์ groovy ไฟล์เดียวและเรียกใช้ฟังก์ชันเหล่านั้นจากไฟล์ groovy อื่น ๆ ฉันเข้าใจว่าสิ่งนี้จะใช้ Groovy เหมือนภาษาสคริปต์เช่นฉันไม่ต้องการคลาส / วัตถุ ฉันกำลังพยายามทำบางอย่างเช่น dsl ที่สามารถทำได้อย่างรวดเร็ว ตัวแปรทั้งหมดจะได้รับการยืนยันจาก Java และฉันต้องการเรียกใช้งานสคริปต์ที่น่าสนใจในเชลล์ เป็นไปได้หรือไม่ มีใครให้ตัวอย่างได้บ้าง
99 groovy 

5
จะเข้าถึง java-class ใน default-package ได้อย่างไร?
ตอนนี้ฉันกำลังทำงานร่วมกับคนอื่น ๆ ในโครงการเกรลส์ ฉันต้องเขียน Java-class บ้าง แต่ฉันต้องการเข้าถึงวัตถุที่สามารถค้นหาได้ที่สร้างขึ้นด้วยความน่ารัก ดูเหมือนว่าวัตถุนี้จะต้องถูกวางไว้ใน default-package คำถามของฉันคือมีวิธีเข้าถึงอ็อบเจ็กต์นี้ใน default-package จาก Java-class ในชื่อ package หรือไม่?


6
แยกสตริงด้วยตัวคั่น
ตอนนี้ฉันกำลังพยายามแยกสตริง1128-2เพื่อให้มีค่าแยกกันสองค่า ตัวอย่างเช่น value1: 1128 และ value2: 2 ดังนั้นฉันจึงสามารถใช้แต่ละค่าแยกกันได้ ฉันพยายามแล้วsplit()แต่ไม่ประสบความสำเร็จ มีวิธีที่เฉพาะเจาะจงในการจัดการ Grails หรือวิธีที่ดีกว่าในการทำเช่นนี้?
96 string  groovy  split 

3
ขั้นตอน / ขั้นตอนตามเงื่อนไขในไปป์ไลน์ Jenkins
คุณจะรันขั้นตอน / ขั้นตอนการสร้างเฉพาะในกรณีที่สร้างสาขาเฉพาะได้อย่างไร ตัวอย่างเช่นเรียกใช้ขั้นตอนการปรับใช้เฉพาะเมื่อมีการเรียกสาขาdeploymentโดยปล่อยให้ทุกอย่างเหมือนเดิม

4
รับรายการไฟล์ทั้งหมดในไดเร็กทอรี (เรียกซ้ำ)
ฉันกำลังพยายามหารายการไฟล์ในไดเร็กทอรีและไดเร็กทอรีย่อย ฉันได้ลองแล้ว: def folder = "C:\\DevEnv\\Projects\\Generic"; def baseDir = new File(folder); files = baseDir.listFiles(); ฉันได้รับไดเรกทอรีเท่านั้น ฉันได้ลองแล้ว: def files = []; def processFileClosure = { println "working on ${it.canonicalPath}: " files.add (it.canonicalPath); } baseDir.eachFileRecurse(FileType.FILES, processFileClosure); แต่ไม่รู้จัก "ไฟล์" ในขอบเขตของการปิด ฉันจะรับรายชื่อได้อย่างไร

8
ไม่พบ method compile () สำหรับอาร์กิวเมนต์ Gradle
มองหาวิธีแก้ปัญหานี้นานเกินไปแล้วและฉันไม่แน่ใจว่าพลาดไปหรือพิมพ์ผิดบางอย่าง แต่สคริปต์ Gradle ของฉันจะไม่รวบรวม ฉันกำลังย้ายไปที่ Gradle และเป็นคนใหม่มาก ฉันคุ้นเคยกับการใช้ Maven ในการจัดการการพึ่งพา แต่ Gradle ดูเหมือนจะดีที่สุดสำหรับฉันในตอนนี้ จากการเรียกใช้ข้อมูลโค้ดนี้: dependencies { compile group: 'org.bukkit', name: 'bukkit', version: '1.7.9-R0.1-SNAPSHOT' compile('io.ibj:MattLib:1.1-SNAPSHOT') { exclude group: 'de.bananaco' exclude 'net.milkbowl:vault:1.2.27' } compile group: 'net.citizensnpcs', name: 'citizens', version: '2.0.12' compile group: 'com.sk89q', name: 'worldedit', version: '5.6.1' compile group: 'com.sk89q', name: 'worldguard', …
95 java  groovy  gradle 

4
การกำหนดค่า Groovy SDK ภายใน IntelliJ IDEA
ฉันใช้งาน IntelliJ IDEA 2017.2.3 ฉันติดตั้ง Groovy 2.4.12 ผ่าน Homebrew (OS X) เมื่อฉันเปิดซอร์สไฟล์ Groovy (หรือ a Jenkinsfile) ฉันจะได้รับสิ่งต่อไปนี้: Groovy SDK ไม่ได้กำหนดค่าสำหรับโมดูล 'my-module' . . . . กำหนดค่า Groovy SDK ... การคลิก "กำหนดค่า Groovy SDK ... " จะนำฉันไปสู่กล่องโต้ตอบต่อไปนี้: ฉันลองกดปุ่ม "สร้าง ... " และเลือกโฟลเดอร์และไฟล์ปฏิบัติการที่เกี่ยวข้องกับ Groovy หลายรายการ แต่ก็ไม่ได้ผล ฉันจะให้ IntelliJ IDEA ยอมรับ Groovy SDK …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.