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

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

3
Gradle- ไม่มีแอตทริบิวต์รายการหลัก
ฉันแทบจะบ้ากับข้อผิดพลาดนี้ที่ฉันได้รับเมื่อเรียกใช้ไฟล์ JAR ที่สร้างขึ้นจาก Gradle ข้อผิดพลาดอ่าน "ไม่มีแอตทริบิวต์รายการหลักใน RxJavaDemo.jar" ฉันพยายามจัดการคุณสมบัติ Manifest แต่ฉันคิดว่าฉันลืมเพิ่มการอ้างอิงหรือบางอย่างลงไป ฉันทำอะไรผิดกันแน่? apply plugin: 'java' apply plugin: 'application' mainClassName = 'demo.MainDashboard' dependencies { compile files ("H:/Processes/Development/libraries/hikari-cp/HikariCP-2.4.1.jar") compile files ("H:/Processes/Development/libraries/controls-fx/controlsfx.jar") compile files ("H:/Processes/Development/libraries/database_connections/sqlite-jdbc-3.8.6.jar") compile files ("H:/Processes/Development/libraries/guava/guava-18.0.jar") compile files ("H:/Processes/Development/libraries/rxjava/rxjava-1.0.12.jar") compile files ("H:/Processes/Development/libraries/rxjava-extras/rxjava-extras-0.5.15.jar") compile files ("H:/Processes/Development/libraries/rxjavafx/RxJavaFX-1.0.0-RC1-SNAPSHOT.jar") compile files ("H:/Processes/Development/libraries/rxjavaguava/rxjava-guava-1.0.3.jar") compile files ("H:/Processes/Development/libraries/rxjava-jdbc/rxjava-jdbc-0.6.3.jar") compile …
93 java  gradle 

4
อินเทอร์เฟซที่มีวิธีการเริ่มต้นเริ่มต้นเมื่อใด
ในขณะที่ค้นหาข้อมูลจำเพาะภาษา Java เพื่อตอบคำถามนี้ฉันได้เรียนรู้สิ่งนั้น ก่อนที่คลาสจะเริ่มต้นจะต้องเริ่มต้นคลาสซูเปอร์คลาสโดยตรงแต่อินเทอร์เฟซที่ใช้โดยคลาสจะไม่ถูกเตรียมใช้งาน ในทำนองเดียวกัน superinterfaces ของอินเทอร์เฟซจะไม่ถูกเตรียมใช้งานก่อนที่อินเทอร์เฟซจะเริ่มต้น เพื่อความอยากรู้อยากเห็นของฉันเองฉันลองใช้แล้วและตามที่คาดไว้อินเทอร์เฟซInterfaceTypeไม่ได้เริ่มต้น public class Example { public static void main(String[] args) throws Exception { InterfaceType foo = new InterfaceTypeImpl(); foo.method(); } } class InterfaceTypeImpl implements InterfaceType { @Override public void method() { System.out.println("implemented method"); } } class ClassInitializer { static { System.out.println("static initializer"); } …

8
เหตุใดเธรดตัวแปรโลคัลจึงปลอดภัยใน Java
ฉันกำลังอ่านมัลติเธรดใน Java และฉันเจอสิ่งนี้ ตัวแปรโลคัลคือเธรดที่ปลอดภัยใน Java ตั้งแต่นั้นมาฉันก็คิดว่าตัวแปรในเครื่องมีความปลอดภัยอย่างไร / ทำไม ใครช่วยแจ้งให้เราทราบได้

1
Loop ไม่เห็นค่าที่เธรดอื่นเปลี่ยนแปลงโดยไม่มีคำสั่งพิมพ์
ในรหัสของฉันฉันมีลูปที่รอให้สถานะบางอย่างเปลี่ยนจากเธรดอื่น เธรดอื่นใช้งานได้ แต่ลูปของฉันไม่เห็นค่าที่เปลี่ยนแปลง มันรอตลอดไป อย่างไรก็ตามเมื่อฉันใส่System.out.printlnคำสั่งในลูปมันก็ใช้งานได้ทันที! ทำไม? ต่อไปนี้เป็นตัวอย่างรหัสของฉัน: class MyHouse { boolean pizzaArrived = false; void eatPizza() { while (pizzaArrived == false) { //System.out.println("waiting"); } System.out.println("That was delicious!"); } void deliverPizza() { pizzaArrived = true; } } ในขณะที่ลูปในขณะทำงานฉันเรียกใช้deliverPizza()จากเธรดอื่นเพื่อตั้งค่าpizzaArrivedตัวแปร แต่การวนซ้ำจะใช้งานได้ก็ต่อเมื่อฉันไม่ใส่System.out.println("waiting");คำสั่ง เกิดอะไรขึ้น?

27
ข้อผิดพลาดของคีย์รีจิสทรี: เวอร์ชัน Java มีค่า '1.8' แต่จำเป็นต้องมี '1.7'
ขณะวิ่ง sencha app build production ฉันได้รับข้อผิดพลาดต่อไปนี้: ข้อผิดพลาด: คีย์รีจิสทรี 'Software \ JavaSoft \ Java Runtime Environment' \ CurrentVersion ' มีค่า '1.8' แต่ต้องระบุ '1.7' ข้อผิดพลาด: ไม่พบข้อผิดพลาด java.dll: ไม่พบ Java SE Runtime Environment java -version คำสั่งแสดงดังต่อไปนี้: เวอร์ชัน java "1.8.0_40" Java (TM) SE Runtime Environment (build 1.8.0_40-b26) Java HotSpot (TM) 64-Bit Server VM (build …

12
แนะนำให้ใช้ StringUtils.EMPTY หรือไม่
คุณใช้StringUtils.EMPTYแทน""? ฉันหมายถึงเป็นค่าส่งคืนหรือถ้าคุณกำหนดค่าของตัวแปร String ฉันไม่ได้หมายถึงการเปรียบเทียบเพราะที่นั่นเราใช้StringUtils.isEmpty()

5
ฉันจะลดช่องว่างภายในรอบข้อความภายในออบเจ็กต์ปุ่ม Android ได้อย่างไร
ดังนั้นในขณะนี้ฉันมีปุ่มที่ดูเหมือนภาพแรกด้านบน ฉันจะลดช่องว่างรอบข้อความภายในปุ่มได้อย่างไร (เพื่อให้ดูเหมือนภาพที่สองมากขึ้น) ความกว้างและความสูงของเค้าโครงถูกตั้งค่าเป็น: android:layout_width="match_parent" android:layout_height="wrap_content" รูปร่างสไตล์ที่กำหนดเองมีพารามิเตอร์ " <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" android:padding="10dp"> ส่วนที่เหลือเป็นเพียงคุณลักษณะของสีและค่ารัศมี เพื่อให้ชัดเจนฉันต้องการให้กรอบของปุ่มกอดข้อความ "เข้าสู่ระบบ" ให้ใกล้ขึ้น ความช่วยเหลือและข้อเสนอแนะทั้งหมดได้รับการชื่นชมอย่างมาก ขอบคุณ.

13
จะใช้ OKHTTP เพื่อขอโพสต์ได้อย่างไร?
ฉันอ่านตัวอย่างที่โพสต์ jsons ไปยังเซิร์ฟเวอร์ บางคนพูดว่า: OkHttp เป็นการใช้งานอินเตอร์เฟส HttpUrlConnection ที่จัดเตรียมโดย Java มีอินพุตสตรีมสำหรับการเขียนเนื้อหาและไม่ทราบ (หรือสนใจ) ว่าเนื้อหานั้นเป็นรูปแบบใด ตอนนี้ฉันต้องการโพสต์ปกติไปยัง URL ด้วยพารามิเตอร์ชื่อและรหัสผ่าน หมายความว่าฉันต้องเข้ารหัสชื่อและคู่ค่าลงในสตรีมด้วยตัวเอง?
93 java  okhttp 

5
xyz ตัวอักษรของประเภท int อยู่นอกช่วง
ฉันกำลังทำงานกับชนิดข้อมูลใน Java ในขณะนี้และถ้าฉันเข้าใจถูกต้องประเภทlongจะยอมรับค่าระหว่างช่วง -9,223,372,036,854,775,808 ถึง +9,223,372,036,854,775,807 ตอนนี้อย่างที่คุณเห็นด้านล่างฉันได้สร้างlongตัวแปรที่เรียกว่าtestLongแม้ว่าเมื่อฉันใส่ 9223372036854775807 เป็นค่าฉันได้รับข้อผิดพลาดที่ระบุว่า: 9223372036854775807 ตัวอักษรของประเภท int อยู่นอกช่วง ฉันไม่รู้ว่าทำไมมันถึงอ้างถึงlongประเภทข้อมูลเป็นintไฟล์. ใครมีไอเดียบ้าง รหัส: char testChar = 01; byte testByte = -128; int testInt = -2147483648; short testShort = -32768; long testLong = 9223372036854775807; float testFoat; double testDouble = 4.940656458412; boolean testBool = true;
93 java  int  long-integer 

6
จะแมปค่าที่ซ้อนกันกับคุณสมบัติโดยใช้คำอธิบายประกอบ Jackson ได้อย่างไร
สมมติว่าฉันกำลังโทรไปยัง API ที่ตอบสนองด้วย JSON ต่อไปนี้สำหรับผลิตภัณฑ์: { "id": 123, "name": "The Best Product", "brand": { "id": 234, "name": "ACME Products" } } ฉันสามารถแมปรหัสผลิตภัณฑ์และชื่อได้โดยใช้คำอธิบายประกอบของ Jackson: public class ProductTest { private int productId; private String productName, brandName; @JsonProperty("id") public int getProductId() { return productId; } public void setProductId(int productId) { this.productId = productId; …
93 java  json  jackson 


4
คุณสามารถเพิ่มข้อความที่กำหนดเองใน AssertJ assertThat ได้หรือไม่
เรามีชุดทดสอบที่ใช้การยืนยัน JUnit กับ Hamcrest matchers เป็นหลัก หนึ่งในทีมของเราเริ่มทดลองใช้AssertJและสร้างความประทับใจให้กับผู้คนด้วยไวยากรณ์ความยืดหยุ่นและความเปิดเผย มีคุณลักษณะหนึ่งที่ JUnit ให้ซึ่งฉันไม่พบสิ่งที่เทียบเท่าใน AssertJ นั่นคือการเพิ่มข้อความยืนยันความล้มเหลวแบบกำหนดเอง เรามักจะเปรียบเทียบวัตถุที่ไม่ได้สร้างขึ้นเพื่อให้มนุษย์สามารถอ่านได้และจะมีรหัสหรือ UUID ที่ดูเหมือนสุ่มและเป็นไปไม่ได้ที่จะบอกว่าข้อมูลเหล่านั้นควรจะเป็นอย่างไร นี่เป็นสถานการณ์ที่หลีกเลี่ยงไม่ได้สำหรับ codebase ของเราน่าเศร้าที่ส่วนหนึ่งของวัตถุประสงค์ที่บรรลุคือการทำแผนที่ข้อมูลระหว่างบริการอื่น ๆ โดยไม่จำเป็นต้องเข้าใจว่ามันคืออะไร ใน JUnit assertThatวิธีการจัดเตรียมเวอร์ชันที่มีString reasonพารามิเตอร์ก่อนMatcher<T>พารามิเตอร์ สิ่งนี้ทำให้การเพิ่มสตริงดีบักสั้น ๆ เป็นเรื่องเล็กน้อยซึ่งจะช่วยให้เกิดความกระจ่างเกี่ยวกับปัญหาเช่นการเปรียบเทียบควรมีความหมายกับมนุษย์อย่างไร ในทางกลับกันAssertJ มีstatic assertThatวิธีการทั่วไปที่แตกต่างกันกว่าล้านล้านวิธีซึ่งส่งคืนรูปแบบของอินเทอร์เฟซ Assertหรือหนึ่งในคลาสที่นำไปใช้งานจำนวนมาก อินเทอร์เฟซนี้ไม่ได้จัดเตรียมวิธีมาตรฐานในการตั้งค่าข้อความที่กำหนดเองที่จะรวมกับความล้มเหลว มีวิธีใดบ้างในการรับฟังก์ชันนี้จาก AssertJ API หรือหนึ่งในส่วนขยายโดยไม่ต้องสร้างคลาสการยืนยันที่กำหนดเองสำหรับทุกประเภทการยืนยันที่เราต้องการเพิ่มข้อความ

9
คลาสได้รับการคอมไพล์โดย Java Environment เวอร์ชันล่าสุด
ขณะรันสคริปต์ซีลีเนียมฉันได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้ใน Eclipse console: คลาสได้รับการคอมไพล์โดย Java Environment เวอร์ชันล่าสุด (ไฟล์คลาสเวอร์ชัน 53.0) เวอร์ชัน Java Runtime นี้รู้จักเวอร์ชันไฟล์คลาสสูงสุด 52.0 เท่านั้น เวอร์ชัน Java: 8 IDE: Eclipse Oxygen เวอร์ชัน Firefox: 46

10
จะใช้คีย์เวิร์ดพ่นสไตล์ Java ใน C # ได้อย่างไร?
ใน Java throwsคีย์เวิร์ดอนุญาตให้มีเมธอดเพื่อประกาศว่าจะไม่จัดการข้อยกเว้นด้วยตัวมันเอง แต่จะโยนมันไปที่เมธอดการเรียก มีคำหลัก / แอตทริบิวต์ที่คล้ายกันใน C # หรือไม่? หากไม่มีสิ่งที่เทียบเท่าคุณจะทำเอฟเฟกต์เดียวกัน (หรือคล้ายกัน) ให้สำเร็จได้อย่างไร?

8
เอาต์พุตในรูปแบบตารางใน System.out ของ Java
ฉันได้ผลลัพธ์จากฐานข้อมูลและต้องการส่งออกข้อมูลเป็นตารางในเอาต์พุตมาตรฐานของ Java ฉันได้ลองใช้ \ t แล้ว แต่คอลัมน์แรกที่ฉันต้องการมีความยาวแปรผันมาก มีวิธีแสดงสิ่งนี้ในตารางที่ดีเช่นเอาต์พุตหรือไม่?

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