2016-10-02 74 views
2

我試圖從here編譯一些編輯過的源代碼,但是我一直收到很多關於名爲「javax.persistence」的包的錯誤。缺少默認Java包?

這是我的IDE版本 -

IntelliJ IDEA 2016.2.4 
Build #IC-162.2032.8, built on September 9, 2016 
JRE: 1.8.0_112-release-b343 x86 
JVM: OpenJDK Server VM by JetBrains s.r.o 

我的JDK似乎不包括這個包,因爲我已經在SDK標籤鏈接整個JDK。有誰知道我做錯了什麼?這是我的消息窗口的輸出 -

Information:Using javac 1.8.0_101 to compile java sources 
Information:java: Errors occurred while compiling module 'BctalkBumpBot-1.0' 
Information:2/10/2016 9:10 PM - Compilation completed with 37 errors and 3 warnings in 3s 3ms 
Warning:java: source value 1.5 is obsolete and will be removed in a future release 
Warning:java: target value 1.5 is obsolete and will be removed in a future release 
Warning:java: To suppress warnings about obsolete options, use -Xlint:-options. 
C:\Users\gabri\Desktop\BctalkBumpBot-1.0\src\com\achow101\bumpbot\BumpEntry.java 
Error:(21, 1) java: package javax.persistence does not exist 
Error:(26, 2) java: cannot find symbol 
    symbol: class Entity 
Error:(29, 6) java: cannot find symbol 
    symbol: class Id 
    location: class com.achow101.bumpbot.BumpEntry 
C:\Users\gabri\Desktop\BctalkBumpBot-1.0\src\com\achow101\bumpbot\DoBumps.java 
Error:(26, 25) java: package javax.persistence does not exist 
Error:(27, 25) java: package javax.persistence does not exist 
Error:(28, 25) java: package javax.persistence does not exist 
Error:(29, 25) java: package javax.persistence does not exist 
Error:(30, 34) java: package javax.persistence.criteria does not exist 
Error:(31, 34) java: package javax.persistence.criteria does not exist 
Error:(32, 34) java: package javax.persistence.criteria does not exist 
Error:(48, 9) java: cannot find symbol 
    symbol: class EntityManagerFactory 
    location: class com.achow101.bumpbot.DoBumps 
Error:(48, 36) java: cannot find symbol 
    symbol: variable Persistence 
    location: class com.achow101.bumpbot.DoBumps 
Error:(49, 9) java: cannot find symbol 
    symbol: class EntityManager 
    location: class com.achow101.bumpbot.DoBumps 
Error:(50, 9) java: cannot find symbol 
    symbol: class CriteriaBuilder 
    location: class com.achow101.bumpbot.DoBumps 
Error:(56, 17) java: cannot find symbol 
    symbol: class CriteriaQuery 
    location: class com.achow101.bumpbot.DoBumps 
Error:(57, 17) java: cannot find symbol 
    symbol: class Root 
    location: class com.achow101.bumpbot.DoBumps 
Error:(59, 17) java: cannot find symbol 
    symbol: class TypedQuery 
    location: class com.achow101.bumpbot.DoBumps 
C:\Users\gabri\Desktop\BctalkBumpBot-1.0\src\com\achow101\bumpbot\BumpBot.java 
Error:(40, 25) java: package javax.persistence does not exist 
Error:(41, 25) java: package javax.persistence does not exist 
Error:(42, 25) java: package javax.persistence does not exist 
Error:(43, 25) java: package javax.persistence does not exist 
Error:(44, 34) java: package javax.persistence.criteria does not exist 
Error:(45, 34) java: package javax.persistence.criteria does not exist 
Error:(46, 34) java: package javax.persistence.criteria does not exist 
Error:(113, 9) java: cannot find symbol 
    symbol: class EntityManagerFactory 
    location: class com.achow101.bumpbot.BumpBot 
Error:(113, 36) java: cannot find symbol 
    symbol: variable Persistence 
    location: class com.achow101.bumpbot.BumpBot 
Error:(114, 9) java: cannot find symbol 
    symbol: class EntityManager 
    location: class com.achow101.bumpbot.BumpBot 
Error:(117, 9) java: cannot find symbol 
    symbol: class CriteriaBuilder 
    location: class com.achow101.bumpbot.BumpBot 
Error:(118, 9) java: cannot find symbol 
    symbol: class CriteriaQuery 
    location: class com.achow101.bumpbot.BumpBot 
Error:(119, 9) java: cannot find symbol 
    symbol: class Root 
    location: class com.achow101.bumpbot.BumpBot 
Error:(121, 9) java: cannot find symbol 
    symbol: class TypedQuery 
    location: class com.achow101.bumpbot.BumpBot 
Error:(165, 17) java: cannot find symbol 
    symbol: class EntityManagerFactory 
Error:(165, 44) java: cannot find symbol 
    symbol: variable Persistence 
Error:(166, 17) java: cannot find symbol 
    symbol: class EntityManager 
Error:(287, 17) java: cannot find symbol 
    symbol: class EntityManagerFactory 
Error:(287, 44) java: cannot find symbol 
    symbol: variable Persistence 
Error:(288, 17) java: cannot find symbol 
    symbol: class EntityManager 

任何幫助表示讚賞。

回答

2

學習閱讀錯誤消息。你正試圖編譯需要javax.persistence類的東西。這些不包括在標準庫中(它們在某個時間點,但沒有多年)。
另外,您確實沒有安裝實際的JDK,但是安裝了JRE。 IntelliJ顯然不介意,這讓我感到驚訝。似乎它正在使用一個內部編譯器。
安裝JDK,從某個地方獲取JEE或至少一個JPA實現(Hibernate或Eclipselink很好),然後離開。

+0

我安裝了JRE,但在IntelliJ請求JDK之後,我在其上安裝了JDK。我以爲這意味着我有一個JDK? –

+0

你應該,如果它被正確配置。從windows/system32中刪除java * .exe。並將Hibernate或Eclipselink添加到您的項目中以獲得JPA功能。 – jwenting

+0

我的IntelliJ安裝是否損壞?我之前安裝了objectdb,而不是Eclipselink。以下是一些截圖 - http://imgur.com/a/lymM8 –