2016-07-03 2 views
0

나는 SwiXml 웹 사이트에 가서 swixml_240.rar을 다운로드하고 또한 단지 확인하기 위해 Java2s 웹 사이트에 swixml.jar 파일을 다운로드. Eclipse에서 빌드 경로를 구성하고 Java2s에서 다운로드 한 swixml.jar을 추가합니다.자바 이클립스 SWIXml 오류

package com.inventory.ui; 

import java.awt.event.ActionEvent; 
import javax.swing.AbstractAction; 
import javax.swing.Action; 
import javax.swing.JLabel; 
import javax.swing.JTextField; 

import org.swixml.SwingEngine; 

public class TestCml 
{ 
    private int clicks; 
    public JTextField tf; 
    public JLabel cnt; 

    public Action submit = new AbstractAction() 
    { 
     public void actionPerformed(ActionEvent e) 
     { 
      tf.setText(tf.getText() + "#"); 
      cnt.setText(String.valueOf(++clicks)); 
     } 
    }; 

    private TestCml() throws Exception 
    { 
     new SwingEngine(this).render("C://Users/Colinn/JavaWorkspace/Patient Management System/src/com/inventory/ui/textcml.xml").setVisible(true); 
    } 

    public static void main(String args[]) throws Exception 
    { 
     new TestCml(); 
    } 
} 

그리고 textcml.xml 파일 : (주 : Eclipse에서이 XML 파일의 라인 2에 X 기호가)

<?xml version="1.0" encoding="UTF-8"?> 
<frame xmlns="http://www.swixml.org/2007/SwixmlTags" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.swixml.org/2007/SwixmlTags http://www.swixml.org/2007/swixml.xsd" size="640,280" title="Hello SWIXML World" defaultCloseOperation="JFrame.EXIT_ON_CLOSE"> 

<panel constraints="BorderLayout.CENTER"> 
<label labelfor="tf" font="Georgia-BOLD-12" foreground="blue" text="Hello World!"/> 
<textfield id="tf" columns="20" Text="Swixml"/> 
<button text="Click Here" action="submit"/> 

</panel> 
<panel constraints="BorderLayout.SOUTH"> 
<label font="Georgia-BOLD-36" text="Clicks:"/> 
<label font="Georgia-BOLD-36" id="cnt"/> 
</panel> 
</frame> 

을 때 나는 여기에 내 소스 코드 이 프로그램을 실행하면 오류가 발생합니다. 이 파일은 JAR 파일에 있어도 항상 SwingEngine.class을 찾습니다.

enter image description here

enter image description here

그리고 지금 나는 이클립스 빌드 경로를 변경했습니다. Java2s에서 swixml.jar을 제거하고 SwiXml 웹 사이트에서 RAR 파일을 추출했습니다. RAR의 내용은 입니다. Java2에서 제공되는 파일과 다릅니다. 빌드 폴더 내부

또한 내가 이클립스 내 빌드 경로에 추가하지만 프로그램을 enter image description here

답변

0

첨부 된 항아리를 실행할 때 또한 같은 오류을 제공 swixml.jar있다 소스 코드가 아닌 클래스 파일 만 포함합니다. 실제 코드 내용을보고 싶다면 해당 사이트로 이동하여 sources.jar를 찾아야합니다.

코드를 실제로 읽으려면 아래에 jar 파일이 있어야합니다.

http://repo1.maven.org/maven2/org/swixml/swixml/2.5.20110914/swixml-2.5.20110914-sources.jar 첨부 소스를 클릭하고 위의 다운로드 한 jar를 가리 킵니다.

소스 코드가 이미있는 경우에는 IDE에서 실제 소스 코드를 가리 키도록 빌드 경로를 가져 오거나 구성해야하는 경우가 있습니다.

희망이 도움이됩니다. 감사합니다

+0

감사하지만 그것은 또 다른 오류가 발생합니다. 스레드 "main"의 예외 java.io.IOException : 리소스를 찾을 수 없습니다. C : // Users/Colinn/JavaWorkspace/Patient Management System/src/com/inventory/ui/textcml.xml \t at org.swixml.SwingEngine .render (알 수없는 출처) \t com.inventory.ui.TestCml. (TestCml.java:29) \t com.inventory.ui.TestCml.main (TestCml.java:34) – ZeroCool

+0

그래서 jar 파일에 클래스 파일 만 들어있는 경우 일부 jar 파일의 소스가 추가되지 않은데 왜 제대로 작동합니까? jdbc jar 파일과 같은 코드? – ZeroCool

+0

설정 및 구성 방법에 따라 다릅니다. 예 : Maven을 사용하는 경우 로컬 저장소 (c :/users /../ m2/com ..)에서 해당 모듈에 대해 특정 source.jar이 존재하는지 여부를 확인하십시오. 일부에게는 존재하고 다른 것에 대해서는 그렇지 않습니다. 예외에 관한 - 당신의 요구 사항이 여기에 무엇인지 확실하지 않지만 XML 파일을 찾고있는 것처럼 보이고 발견되지 않으면 IoException을 던집니다. 이 문제를 해결하려면 XML 파일을 대상 경로 또는 프로젝트 클래스 경로에 배치하십시오. –