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

Java เป็นภาษาการเขียนโปรแกรมระดับสูงที่เป็นที่นิยม ใช้แท็กนี้เมื่อคุณมีปัญหาในการใช้หรือทำความเข้าใจภาษานั้น ๆ แท็กนี้ไม่ค่อยได้ใช้คนเดียวและมักใช้ร่วมกับ [สปริง], [สปริงบูต], [jakarta-ee], [android], [javafx], [gradle] และ [maven]

12
กำลังอ่าน Jar's Manifest ของฉันเอง
ฉันต้องการอ่านManifestไฟล์ซึ่งส่งมอบชั้นเรียนของฉัน แต่เมื่อฉันใช้: getClass().getClassLoader().getResources(...) ฉันได้รับMANIFESTจากการ.jarโหลดครั้งแรกใน Java Runtime แอปของฉันจะทำงานจากแอพเพล็ตหรือเว็บสตาร์ต ดังนั้นฉันจะไม่สามารถเข้าถึง.jarไฟล์ของตัวเองได้ฉันเดาว่า จริงๆแล้วฉันต้องการอ่านExport-packageแอตทริบิวต์.jarที่เริ่มต้นของ Felix OSGi ดังนั้นฉันจึงสามารถเปิดเผยแพ็คเกจเหล่านั้นให้กับเฟลิกซ์ได้ ความคิดใด ๆ ?

2
ConnectionTimeout กับ SocketTimeout
ฉันมีปัญหากับไลบรารีที่ฉันใช้ อาจเป็นห้องสมุดหรืออาจเป็นฉันใช้ผิด! โดยทั่วไปเมื่อฉันทำสิ่งนี้ (หมดเวลาเป็นมิลลิวินาที) _ignitedHttp.setConnectionTimeout(1); // v short _ignitedHttp.setSocketTimeout(60000); // 60 seconds ไม่มีการสร้างข้อยกเว้นการหมดเวลาและทำงานได้ดีอย่างไรก็ตามเมื่อฉันทำสิ่งต่อไปนี้ _ignitedHttp.setConnectionTimeout(60000); // 60 seconds _ignitedHttp.setSocketTimeout(1); // v short ฉันได้รับข้อยกเว้นซ็อกเก็ต ดังนั้นคำถามของฉันคือทำไมฉันไม่สามารถจำลองข้อยกเว้นการเชื่อมต่อได้? ฉันเข้าใจความแตกต่างระหว่างซ็อกเก็ตและการหมดเวลาการเชื่อมต่อหรือไม่? ห้องสมุดอยู่ที่นี่ (ยังไม่เปิดตัวอย่างเป็นทางการ)

1
ฉันจะรับรายการจากคุณสมบัติคลาสบางอย่างด้วย Java 8 Stream ได้อย่างไร
ฉันมีList<Person>. ฉันต้องการได้รับListจากทรัพย์สินของPerson. ตัวอย่างเช่นฉันมีPersonชั้นเรียน: class Person { private String name; private String birthDate; public String getName() { return name; } public String getBirthDate() { return birthDate; } Person(String name) { this.name = name; } } List<Person> personList = new ArrayList<>(); personList.add(new Person("David")); personList.add(new Person("Joe")); personList.add(new Person("Michel")); personList.add(new Person("Barak")); ฉันต้องการรับรายชื่อด้วยStreamAPI ดังนี้: List<String> …

7
จะตั้งค่าตัวแปรสภาพแวดล้อม JAVA_HOME บน Mac OS X 10.9 ได้อย่างไร?
ฉันเพิ่งซื้อ MacBook Pro ใหม่เอี่ยม นี่เป็น MAC เครื่องแรกของฉันและฉันก็ยังคงพยายามที่จะนำทางไปรอบ ๆ อย่างไรก็ตามฉันยังใหม่กับ Java และฉันได้ฝึกฝนบนพีซี Windows ของฉันก่อนที่มันจะตายอย่างถาวร ตอนนี้ฉันใช้ MAC นี้ฉันติดตั้ง JDK ของฉันและตอนนี้ฉันต้องตั้งค่าJAVA_HOMEตัวแปรสภาพแวดล้อม ฉันไม่รู้จะทำอย่างไร ฉันลองทำตามคำแนะนำเหล่านี้แล้ว แต่ก็ไม่ได้ไกลมากนัก Mkyong.com: วิธีตั้งค่าตัวแปร JAVA_HOME ใน Mac OSX YouTube: วิธีตั้งค่าตัวแปรสภาพแวดล้อมบน mac, linux, solaris, rhel YouTube: วิธีตั้งค่าตัวแปรสภาพแวดล้อมใน Mac ฉันสามารถค้นหาเทอร์มินัลได้และฉันคิดว่าฉันสร้างไฟล์หลายไฟล์ ฉันได้รับข้อความเช่นนี้: (1) โปรแกรมอื่นอาจกำลังแก้ไขไฟล์เดียวกัน ในกรณีนี้โปรดระวังอย่าลงเอยด้วยสองอินสแตนซ์ที่แตกต่างกันของไฟล์เดียวกันเมื่อทำการเปลี่ยนแปลง ออกหรือดำเนินการต่อด้วยความระมัดระวัง (2) เซสชันแก้ไขสำหรับไฟล์นี้ขัดข้อง หากเป็นกรณีนี้ให้ใช้ ": recover" หรือ "vim -r …

7
ตัวแปรที่ใช้ในแลมบ์ดานิพจน์ควรเป็นขั้นสุดท้ายหรือมีประสิทธิผลสุดท้าย
ตัวแปรที่ใช้ในแลมบ์ดานิพจน์ควรเป็นขั้นสุดท้ายหรือมีประสิทธิผลสุดท้าย เมื่อฉันพยายามใช้calTzมันแสดงข้อผิดพลาดนี้ private TimeZone extractCalendarTimeZoneComponent(Calendar cal, TimeZone calTz) { try { cal.getComponents().getComponents("VTIMEZONE").forEach(component -> { VTimeZone v = (VTimeZone) component; v.getTimeZoneId(); if (calTz == null) { calTz = TimeZone.getTimeZone(v.getTimeZoneId().getValue()); } }); } catch (Exception e) { log.warn("Unable to determine ical timezone", e); } return null; }
135 java  lambda 


5
เพิ่มการพึ่งพาใน Maven
ฉันจะนำไฟล์ jar ที่ฉันมีและเพิ่มไปยังระบบการพึ่งพาใน maven 2 ได้อย่างไร ฉันจะเป็นผู้ดูแลการพึ่งพานี้และรหัสของฉันต้องการ jar นี้ในพา ธ คลาสเพื่อที่จะคอมไพล์

27
ไลบรารีวิดเจ็ต GWT ที่ดีที่สุด? [ปิด]
ตามที่กล่าวมาในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบถาม & ตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจก่อให้เกิดการถกเถียงโต้แย้งการสำรวจความคิดเห็นหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงได้และอาจเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อรับคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา คำถามสำหรับกูรู GWT ทุกคน - คลังวิดเจ็ต GWT ที่ดีที่สุดคืออะไร? และทำไม? รายการตามคำตอบ: ค่าเริ่มต้น Sencha GXT GWT อัจฉริยะ Vaadin GWT-Bootstrap GwtBootstrap 3 Rocket GWT (ไม่ใช้งาน) เสื่อทาทามิ (ไม่ใช้งาน) ErraiFramework GWTMaterialDesign наконец-новоепоколениеоснованноена JsInterop : GWT + องค์ประกอบพอลิเมอร์ GWT + พอลิเมอร์ เชิงมุมและ GWT GWTMaterialDesign
134 java  gwt 

12
Java: รับองค์ประกอบสุดท้ายหลังจากแยก
ฉันใช้วิธีแยกสตริงและฉันต้องการมีองค์ประกอบสุดท้าย ขนาดของอาร์เรย์สามารถเปลี่ยนแปลงได้ ตัวอย่าง: String one = "Düsseldorf - Zentrum - Günnewig Uebachs" String two = "Düsseldorf - Madison" ฉันต้องการแยกสตริงด้านบนและรับรายการสุดท้าย: lastone = one.split("-")[here the last item] // <- how? lasttwo = two.split("-")[here the last item] // <- how? ฉันไม่ทราบขนาดของอาร์เรย์ที่รันไทม์ :(
134 java  string  split 

6
วิธีรับ Scala List จาก Java List
ฉันมี Java API ที่ส่งคืนรายการเช่น: public List<?> getByXPath(String xpathExpr) ฉันใช้รหัส scala ด้านล่าง: val lst = node.getByXPath(xpath) ตอนนี้ถ้าฉันลองน้ำตาลไวยากรณ์ของสกาล่าเช่น: lst.foreach{ node => ... } มันไม่ทำงาน. ฉันได้รับข้อผิดพลาด: value foreach is not a member of java.util.List[?0] ดูเหมือนว่าฉันต้องแปลงรายการ Java เป็นรายการ Scala จะทำอย่างไรในบริบทข้างต้น?
134 java  scala 

6
ฉันจะสร้างสตรีมจากอาร์เรย์ได้อย่างไร
เมื่อใดก็ตามที่ฉันต้องการสร้างสตรีมจากอาร์เรย์ฉันจะทำ String[] array = {"x1", "x2"}; Arrays.asList(array).stream(); มีวิธีโดยตรงในการสร้างสตรีมจากอาร์เรย์หรือไม่?

3
จำนวนพารามิเตอร์สูงสุดในการประกาศเมธอด Java
จำนวนพารามิเตอร์สูงสุดที่เมธอดใน Java สามารถมีได้คือเท่าใดและเพราะเหตุใด ฉันใช้ Java 1.8 บนระบบ Windows 64 บิต คำตอบทั้งหมดบน StackOverflow เกี่ยวกับเรื่องนี้บอกว่าขีด จำกัด ทางเทคนิคคือ 255 พารามิเตอร์โดยไม่ระบุสาเหตุ เพื่อความแม่นยำ 255 สำหรับวิธีคงที่และ 254 สำหรับไม่คงที่ ( thisในกรณีนี้จะเป็น 255) ฉันคิดว่าสิ่งนี้สามารถอธิบายได้ในข้อกำหนดบางประเภทและมีเพียงจำนวนพารามิเตอร์สูงสุดที่กำหนดแบบคงที่ที่อนุญาต แต่สิ่งนี้ใช้ได้สำหรับintและประเภท 4 ไบต์ทั้งหมดเท่านั้น ฉันทำการทดสอบกับlongพารามิเตอร์บางอย่างและฉันสามารถประกาศพารามิเตอร์ 127 รายการในกรณีนั้นเท่านั้น ด้วยStringพารามิเตอร์จำนวนที่อนุญาตที่ฉันอนุมานได้จากการทดสอบคือ 255 (อาจเป็นเพราะขนาดอ้างอิงคือ 4 ไบต์ใน Java?) แต่เนื่องจากฉันใช้ระบบ 64 บิตขนาดอ้างอิงจึงควรกว้าง 8 ไบต์และด้วยStringพารามิเตอร์จำนวนสูงสุดที่อนุญาตควรเป็น 127 ซึ่งคล้ายกับlongประเภท ขีด จำกัด นี้ถูกนำไปใช้อย่างไร? ขีด จำกัด …
134 java  jvm 

9
การสร้างและการกำหนดหมายเลขเวอร์ชันสำหรับโครงการ Java (ant, cvs, hudson)
แนวทางปฏิบัติที่ดีที่สุดในปัจจุบันสำหรับการจัดการหมายเลขรุ่นและหมายเลขเวอร์ชันอย่างเป็นระบบในโครงการ Java คืออะไร โดยเฉพาะ: วิธีจัดการหมายเลขบิลด์อย่างเป็นระบบในสภาพแวดล้อมการพัฒนาแบบกระจาย วิธีรักษาหมายเลขเวอร์ชันในซอร์ส / พร้อมใช้งานสำหรับแอปพลิเคชันรันไทม์ วิธีการรวมเข้ากับที่เก็บซอร์สอย่างถูกต้อง วิธีจัดการหมายเลขเวอร์ชันเทียบกับแท็กที่เก็บโดยอัตโนมัติ วิธีการรวมเข้ากับโครงสร้างพื้นฐานที่สร้างอย่างต่อเนื่อง มีเครื่องมือจำนวนมากที่พร้อมใช้งานและ ant (ระบบสร้างที่เราใช้) มีงานที่จะรักษาหมายเลขบิลด์ไว้ แต่ยังไม่ชัดเจนว่าจะจัดการสิ่งนี้กับนักพัฒนาหลายคนพร้อมกันโดยใช้ CVS, svn หรือที่คล้ายกันได้อย่างไร . [แก้ไข] มีคำตอบบางส่วนหรือเฉพาะเจาะจงที่ดีและเป็นประโยชน์ปรากฏอยู่ด้านล่างดังนั้นฉันจะสรุปคำตอบบางส่วน สำหรับฉันดูเหมือนจะไม่มี "แนวทางปฏิบัติที่ดีที่สุด" ที่ชัดเจนในเรื่องนี้ แต่เป็นการรวบรวมแนวคิดที่ทับซ้อนกัน ด้านล่างนี้ค้นหาบทสรุปของฉันและคำถามที่เป็นผลลัพธ์บางอย่างที่ผู้คนอาจพยายามตอบเพื่อติดตามผล [ใหม่สำหรับ stackoverflow ... โปรดแสดงความคิดเห็นหากฉันทำสิ่งนี้ผิด] หากคุณใช้ SVN การกำหนดเวอร์ชันของการชำระเงินที่เฉพาะเจาะจงจะมาพร้อมกับการโดยสาร การสร้างหมายเลขสามารถใช้ประโยชน์จากสิ่งนี้เพื่อสร้างหมายเลขบิวด์เฉพาะที่ระบุการชำระเงิน / การแก้ไขเฉพาะ [CVS ซึ่งเราใช้ด้วยเหตุผลเดิมไม่ได้ให้ข้อมูลเชิงลึกในระดับนี้มากนัก ... การแทรกแซงด้วยตนเองกับแท็กช่วยให้คุณมีส่วนร่วมได้] หากคุณใช้ maven เป็นระบบบิลด์ของคุณจะมีการสนับสนุนสำหรับการสร้างหมายเลขเวอร์ชันจาก SCM รวมถึงโมดูลรีลีสสำหรับการสร้างรีลีสโดยอัตโนมัติ [เราไม่สามารถใช้ maven ได้ด้วยเหตุผลหลายประการ แต่สิ่งนี้จะช่วยผู้ที่ทำได้ …

8
ฉันสามารถขอซิงโครนัสกับวอลเลย์ได้หรือไม่?
สมมติว่าฉันอยู่ในบริการที่มีเธรดพื้นหลังอยู่แล้ว ฉันสามารถร้องขอโดยใช้วอลเลย์ในเธรดเดียวกันเพื่อให้การโทรกลับเกิดขึ้นพร้อมกันได้หรือไม่? มี 2 ​​เหตุผลสำหรับสิ่งนี้: - ประการแรกฉันไม่ต้องการเธรดอื่นและจะเป็นการสิ้นเปลืองในการสร้าง - ประการที่สองถ้าฉันอยู่ใน ServiceIntent การดำเนินการของเธรดจะเสร็จสิ้นก่อนการติดต่อกลับและด้วยเหตุนี้ฉันจะไม่ได้รับคำตอบจาก Volley ฉันรู้ว่าฉันสามารถสร้าง Service ของตัวเองที่มีเธรดบางส่วนที่มี runloop ที่ฉันสามารถควบคุมได้ แต่ก็เป็นที่พึงปรารถนาที่จะมีฟังก์ชันนี้ในการวอลเลย์ ขอบคุณ!

6
ฉันจะเริ่มต้นอาร์เรย์สตริงที่มีความยาว 0 ใน Java ได้อย่างไร
Java Docs สำหรับวิธีการ String[] java.io.File.list(FilenameFilter filter) นี้รวมอยู่ในคำอธิบายผลตอบแทน: อาร์เรย์จะว่างเปล่าถ้าไดเร็กทอรีว่างเปล่าหรือตัวกรองไม่ยอมรับชื่อ ฉันจะทำสิ่งที่คล้ายกันและเริ่มต้นอาร์เรย์ String (หรืออาร์เรย์อื่น ๆ สำหรับเรื่องนั้น) ให้มีความยาว 0 ได้อย่างไร

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