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

Apache Maven เป็นเครื่องมือสร้างอัตโนมัติและเครื่องมือการจัดการโครงการที่ใช้เป็นหลักสำหรับโครงการ Java แท็กนี้สำหรับคำถามที่ไม่เกี่ยวข้องกับรุ่น Maven ที่ระบุ ใช้แท็ก gradle แทนสำหรับคำถามที่เกี่ยวข้องกับ Gradle

29
จะเพิ่มไฟล์ jar ในเครื่องให้กับโครงการ Maven ได้อย่างไร
ฉันจะเพิ่มไฟล์ jar ในตัวเครื่อง (ยังไม่ได้เป็นส่วนหนึ่งของที่เก็บ Maven) ได้โดยตรงในแหล่งห้องสมุดของโครงการของฉันได้อย่างไร

30
วิธีแก้ปัญหา“ การดำเนินการปลั๊กอินไม่ครอบคลุมในการกำหนดค่าวงจรชีวิต” สำหรับ Spring Maven Builds Builds
ฉันพยายามที่จะทำงานร่วมกับข้อมูลฤดูใบไม้ผลิและ Neo4j ฉันเริ่มโดยพยายามทำตามคำแนะนำที่เชื่อมโยงกับเว็บไซต์หลัก โดยเฉพาะอย่างยิ่งฉันใช้ pom.xml จาก"Hello, World!" ไฟล์ตัวอย่าง นี่คือ snip จาก pom.xml ของฉันสำหรับปลั๊กอินที่ทำให้เกิดปัญหา ... <plugin> <!-- Required to resolve aspectj-enhanced class features --> <groupId>org.codehaus.mojo</groupId> <artifactId>aspectj-maven-plugin</artifactId> <version>1.0</version> <configuration> <outxml>true</outxml> <aspectLibraries> <aspectLibrary> <groupId>org.springframework</groupId> <artifactId>spring-aspects</artifactId> </aspectLibrary> <aspectLibrary> <groupId>org.springframework.data</groupId> <artifactId>spring-data-neo4j</artifactId> </aspectLibrary> </aspectLibraries> <source>1.6</source> <target>1.6</target> </configuration> <executions> <!-- ERROR HERE IN ECLIPSE SEE BELOW FOR …


12
ฉันจะบอกให้ Maven ใช้การอ้างอิงรุ่นล่าสุดได้อย่างไร
ใน Maven มักจะมีการตั้งค่าการพึ่งพาเช่นนี้: <dependency> <groupId>wonderful-inc</groupId> <artifactId>dream-library</artifactId> <version>1.2.3</version> </dependency> ตอนนี้ถ้าคุณกำลังทำงานกับไลบรารีที่มีการเผยแพร่บ่อยครั้งการอัปเดตแท็ก <version> อย่างต่อเนื่องอาจทำให้รำคาญ มีวิธีใดที่จะบอกให้ Maven ใช้เวอร์ชันล่าสุดที่มีอยู่เสมอ (จากที่เก็บ)?

12
ความแตกต่างระหว่างการจัดการการพึ่งพาและการพึ่งพาใน Maven
ความแตกต่างระหว่างdependencyManagementและdependenciesคืออะไร? ฉันได้เห็นเอกสารที่เว็บไซต์ Apache Maven ดูเหมือนว่าการพึ่งพาที่กำหนดไว้ภายใต้dependencyManagementสามารถนำมาใช้ในโมดูลย่อยได้โดยไม่ต้องระบุรุ่น ตัวอย่างเช่น: โครงการหลัก (Pro-par) กำหนดการอ้างอิงภายใต้dependencyManagement: <dependencyManagement> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8</version> </dependency> </dependencies> </dependencyManagement> จากนั้นในลูกของ Pro-par ฉันสามารถใช้ Junit: <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> </dependency> </dependencies> อย่างไรก็ตามฉันสงสัยว่าจำเป็นต้องกำหนด junit ใน parent pom หรือไม่? ทำไมไม่กำหนดโดยตรงในโมดูลที่ต้องการ?

11
ต้องการจัดการกับ“ Xerces hell” ใน Java / Maven หรือไม่
ในที่ทำงานของฉันการกล่าวถึงเพียงคำว่า Xerces นั้นเพียงพอที่จะกระตุ้นความโกรธแค้นจากผู้พัฒนา ภาพรวมคร่าวๆของคำถาม Xerces อื่น ๆ เกี่ยวกับ SO ดูเหมือนจะบ่งบอกว่าผู้ใช้ Maven เกือบทั้งหมดนั้น "ถูก" โดยปัญหานี้ในบางจุด น่าเสียดายที่การเข้าใจปัญหาต้องใช้ความรู้เล็กน้อยเกี่ยวกับประวัติของ Xerces ... ประวัติศาสตร์ Xerces เป็นตัวแยกวิเคราะห์ XML ที่ใช้กันอย่างแพร่หลายในระบบนิเวศ Java เกือบทุกไลบรารีหรือกรอบงานที่เขียนใน Java ใช้ Xerces ในบางความจุ ขวด Xerces รวมอยู่ในไบนารีอย่างเป็นทางการจนถึงทุกวันนี้ ยกตัวอย่างเช่น Xerces 2.11.0 การดำเนินขวดเป็นชื่อและไม่xercesImpl.jarxercesImpl-2.11.0.jar ทีม Xerces ไม่ได้ใช้ Mavenซึ่งหมายความว่าพวกเขาไม่ได้อัปโหลดปล่อยอย่างเป็นทางการเพื่อMaven กลาง Xerces เคยถูกปล่อยออกมาเป็น jar เดียว ( xerces.jar) แต่ถูกแบ่งออกเป็นสองขวดหนึ่งอันประกอบด้วย API ( xml-apis.jar) …

25
จะบังคับให้อัพเดต maven ได้อย่างไร?
ฉันอิมพอร์ตโปรเจ็กต์ที่ทำงานอยู่แล้วบนคอมพิวเตอร์เครื่องอื่นและมันเริ่มดาวน์โหลดการอ้างอิง เห็นได้ชัดว่าการเชื่อมต่ออินเทอร์เน็ตของฉันล้มเหลวและตอนนี้ฉันได้รับสิ่งต่อไปนี้: >Build errors for comics; org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal on project comicsTest: Could not resolve dependencies for project comicsTest:comicsTest:war:0.0.1-SNAPSHOT: The following artifacts could not be resolved: org.springframework:spring-context:jar:3.0.5.RELEASE, org.hibernate:hibernate-entitymanager:jar:3.6.0.Final, org.hibernate:hibernate-core:jar:3.6.0.Final, org.hibernate:hibernate-commons-annotations:jar:3.2.0.Final, org.aspectj:aspectjweaver:jar:1.6.8, commons-lang:commons-lang:jar:2.5, >mysql:mysql-connector-java:jar:5.1.13: Failure to transfer org.springframework:spring-context:jar:3.0.5.RELEASE from http://repo1.maven.org/maven2 was cached in the local repository, resolution will not …
731 maven 

30
ไม่มีการรวบรวมในสภาพแวดล้อมนี้ บางทีคุณกำลังใช้งาน JRE มากกว่า JDK
ฉันกำลังรวบรวมโครงการใน Eclipse โดยใช้ m2eclipse ฉันตั้งค่าเส้นทาง JDK ใน Eclipse ดังนี้: Windows-->preferences-->installed jres--> jdk1.7.xx path แต่นี่แสดงข้อผิดพลาด [ERROR] COMPILATION ERROR : [INFO] ------------------------------------------------------------- [ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK? [INFO] 1 error [INFO] ------------------------------------------------------------- [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] …

20
เมื่อ maven พูดว่า“ การแก้ปัญหาจะไม่ถูกพยายามอีกครั้งจนกระทั่งช่วงเวลาการอัปเดตของ MyRepo ผ่านไปแล้ว” ช่วงเวลานั้นถูกระบุไว้ที่ใด
ด้วย maven บางครั้งฉันก็โดนสิ่งประดิษฐ์ที่มาจาก repo ของบุคคลที่สามที่ฉันยังไม่ได้สร้างหรือรวมอยู่ในที่เก็บของฉัน ฉันจะได้รับข้อความแสดงข้อผิดพลาดจากลูกค้า maven ว่าไม่พบสิ่งประดิษฐ์: ล้มเหลวในการค้นหา org.jfrog.maven.annomojo: maven-plugin-anno: jar: 1.4.0 ในhttp://myrepo:80/artifactory/repoถูกแคชในพื้นที่เก็บข้อมูลท้องถิ่นการแก้ปัญหาจะไม่ถูก reattempted จนกว่าช่วงเวลาการปรับปรุงของ MyRepo ที่ผ่านไปหรือการปรับปรุงถูกบังคับ -> [ ช่วยเหลือ 1] ตอนนี้ผมเข้าใจสิ่งที่นี้หมายถึงและก็สามารถ re-run คำสั่งของฉันที่มี-Uและสิ่งที่มักจะปรับการทำงานจากที่นั่นออก อย่างไรก็ตามฉันพบว่าข้อความแสดงข้อผิดพลาดนี้ไม่ได้ใช้งานง่ายและกำลังพยายามทำให้เพื่อนร่วมงานของฉันปวดหัวบ้าง ฉันกำลังพยายามหาว่ามีบางที่ที่ฉันสามารถแก้ไขupdate intervalการตั้งค่านี้ได้ไหม เป็นupdate intervalที่กล่าวถึงในข้อผิดพลาดนี้ฝั่งไคลเอ็นต์หรือการตั้งค่าด้านเซิร์ฟเวอร์? หากฝั่งไคลเอ็นต์ฉันจะกำหนดค่าได้อย่างไร หากฝั่งเซิร์ฟเวอร์ไม่มีใครรู้ว่า Nexus / Artifactory เปิดเผยการตั้งค่าเหล่านี้อย่างไร
587 maven  artifactory 

23
การติดตั้ง Maven บน Mac OS X
ฉันพยายามที่จะติดตั้ง Maven ผ่านช่องโดยทำตามคำแนะนำเหล่านี้ จนถึงตอนนี้ฉันได้รับสิ่งนี้ export M2_HOME=/user/apple/apache-maven-3.0.3 export M2=$M2_HOME/bin export PATH=$M2:$PATH export JAVA_HOME=/usr/java/jdk1.6.0_22 นี่อาจเป็นคำถามงี่เง่าที่คุณจะไปหาสิ่งนี้?
545 macos  maven  maven-3 


29
Maven ไม่พบการทดสอบ JUnit ที่จะเรียกใช้
ฉันมีโปรแกรม maven มันรวบรวมได้ดี เมื่อฉันเรียกใช้mvn testจะไม่เรียกใช้การทดสอบใด ๆ (ภายใต้หัวข้อ TESTs บอกว่าThere are no tests to run.) -Xผมเคยสร้างปัญหานี้ด้วยการติดตั้งง่ายสุดซึ่งผมจะรวมถึงด้านล่างเช่นเดียวกับการส่งออกเมื่อทำงานกับ การทดสอบหน่วยทำงานได้ดีจาก eclipse (ทั้งคู่กับแพ็คเกจ junit เริ่มต้นและเมื่อฉันรวม junit.jar ที่ดาวน์โหลดโดย maven) mvn ยังtest-compileสร้างคลาสได้อย่างถูกต้องภายใต้คลาสทดสอบ ฉันใช้งานบน OSX 10.6.7 ด้วย Maven 3.0.2 และ java 1.6.0_24 นี่คือโครงสร้างไดเรกทอรี: /my_program/pom.xml /my_program/src/main/java/ClassUnderTest.java /my_program/src/test/java/ClassUnderTestTests.java pom.xml: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>my_group</groupId> <artifactId>my_program</artifactId> …
416 java  maven  junit  junit4  maven-3 

15
วิธีแก้ไขข้อผิดพลาด“ การอัพเดต Maven Project” ไม่รองรับ IClasspathEntry kind = 4?
ฉันได้นำเข้าโครงการ Maven ใน STS เมื่อฉันเรียกใช้โครงการอัปเดตการอัปเดตที่ฉันได้รับ: "Updating Maven Project". Unsupported IClasspathEntry kind=4 มีวิธีแก้ปัญหาสำหรับสิ่งนี้หรือไม่?

8
IntelliJ - แปลงโครงการ / โมดูล Java เป็นโครงการ / โมดูล Maven
ฉันมีโครงการใน Bitbucket เฉพาะแหล่งที่มาเท่านั้น ในการดึงโปรเจ็กต์ไปยังเครื่องใหม่ฉันใช้การควบคุมเวอร์ชัน> ชำระเงินจากการควบคุมเวอร์ชันจากภายใน IntelliJ จากนั้นจะถามว่าฉันต้องการสร้างโครงการใหม่จากแหล่งนี้หรือไม่ซึ่งฉันตอบว่าใช่ จนถึงตอนนี้ดีมาก มันสร้างโปรเจ็กต์เล็ก ๆ ที่ดีสำหรับฉันซึ่งประกอบด้วยโมดูลเดียว อย่างไรก็ตามเป้าหมายของฉันในการดึงโครงการนี้เข้าสู่ IntelliJ คือเปลี่ยนเป็นโครงการ Maven ฉันไม่พบตัวเลือกใด ๆ ที่จะให้ฉันทำเช่นนี้! มีวิธีที่จะทำให้ IntelliJ เพิ่งสร้าง pom.xml ว่างเปล่าขั้นพื้นฐานสำหรับฉันด้วยชื่อและ artifactId และที่เก็บหรือไม่? หรือมีวิธีการนำเข้าโครงการเป็นโครงการ Maven ตั้งแต่แรกไหม (เมื่อใดก็ตามที่ฉันพยายามสร้างโครงการจากแหล่งที่มีอยู่จะให้ตัวเลือกของโครงการ Java เท่านั้น)

6
จะกำหนดค่าการเข้ารหัสใน Maven ได้อย่างไร
เมื่อฉันทำงานmaven installในโครงการ maven โมดูลของฉันฉันมักจะได้รับผลลัพธ์ต่อไปนี้: [WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. build is platform dependent! ดังนั้นฉัน googled รอบเล็กน้อย แต่สิ่งที่ฉันสามารถหาได้คือฉันต้องเพิ่ม: <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> ... ถึง pom.xml ของฉัน แต่มันมีอยู่แล้ว (ในแม่pom.xml) การกำหนดค่า<encoding>สำหรับ maven-resources-plugin หรือ maven-compiler-plugin ยังไม่สามารถแก้ไขได้ แล้วปัญหาคืออะไร

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