![](/img/trans.png)
[英]How can I fix package errors when compiling with Play Framework. Getting error: package redis.clients.jedis does not exist
[英]How can I fix this “package does not exist” error?
在OS X上。
$ java -version
java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02-279-10M3065)
Java HotSpot(TM) 64-Bit Server VM (build 16.3-b01-279, mixed mode)
這是我的整個項目:
$ ll
total 1072
-rw-r--r-- 1 ethan ethan 1316 Oct 19 17:17 BlackberryDataExtractor.class
-rw-r--r-- 1 ethan ethan 1439 Oct 19 18:05 BlackberryDataExtractor.java
-rw-r--r--@ 1 ethan ethan 537303 Apr 19 2010 sqljdbc4.jar
<-- MS SQL Server JDBC driver
這是BlackberryDataExtractor.java
。 它實際上還沒有做任何事情。 我只是想讓基本的東西像數據庫連接一樣工作:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import com.microsoft.sqlserver.jdbc;
class BlackberryDataExtractor {
public static void main(String[] args) {
Connection con = BlackberryDataExtractor.getConnection();
}
public static final Connection getConnection()
{
Connection con = null;
try
{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
con = DriverManager.getConnection("jdbc:sqlserver://[ etc... ]");
String SQL = "SELECT uc.MailboxSMTPAddr AS email, sd.PhoneNumber AS phone_number"
+ "FROM dbo.UserConfig uc, dbo.SyncDeviceMgmtSummary sd"
+ "WHERE sd.UserConfigId = uc.Id";
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(SQL);
while (rs.next()) {
System.out.println(rs.getString("email") + ", " + rs.getString("phone_number"));
}
rs.close();
stmt.close();
}
catch(SQLException e)
{
e.printStackTrace();
}
catch(ClassNotFoundException e)
{
e.printStackTrace();
}
return con;
}
}
它不會編譯。 這是錯誤:
$ javac -cp "$CLASSPATH;*.jar" BlackberryDataExtractor.java
BlackberryDataExtractor.java:4: package com.microsoft.sqlserver does not exist
import com.microsoft.sqlserver.jdbc;
^
BlackberryDataExtractor.java:23: cannot find symbol
symbol : class Statement
location: class BlackberryDataExtractor
Statement stmt = con.createStatement();
^
BlackberryDataExtractor.java:24: cannot find symbol
symbol : class ResultSet
location: class BlackberryDataExtractor
ResultSet rs = stmt.executeQuery(SQL);
^
3 errors
javac
無法理解*.jar
類的通配符。 您必須明確。
嘗試javac -cp "$CLASSPATH;sqljdbc4.jar" ...
直接指定jar文件而不使用glob“ * .jar”可以工作嗎?
javac -cp "$CLASSPATH;sqljdbc4.jar" BlackberryDataExtractor.java
看起來您還缺少一些java.sql。 進口。 (結果集和語句)
我有同樣的問題。 當我在Eclipse中編寫和執行程序時,一切正常,但是當我在終端(Ubuntu)中執行程序時,出現錯誤“包com.microsoft.sqlserver不存在”。 我不確定這是否是一個好的解決方案,但我將項目導出到jar文件,然后運行了java -jar "filename".jar.
然后一切都很好。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.