1

Тема: Проблеми з проектом

перевстановлював Віндус , проекти скопіював на діск Д . Тепер при запуску проектів зявляються проблеми...

Post's attachments

проблема.png 10.2 kb, 187 downloads since 2016-03-06 

2 Востаннє редагувалося Lujok (06.03.2016 19:58:10)

Re: Проблеми з проектом

В той же час бібліотека SwingX  ( swingx-all-1.6.3 ) є в бібліотеці проекта

Post's attachments

проблема_проект.png 11.87 kb, 173 downloads since 2016-03-06 

3 Востаннє редагувалося Lujok (06.03.2016 19:57:06)

Re: Проблеми з проектом

Бібліотеку   "swingx-mavensupport-1.6.4.jar"  хоча і добавляв , але потім видалив . Не розумію  чому NetBeans показує помилку .

4

Re: Проблеми з проектом

В NetBeans не працював, але можливо потрібно перевказати шлях (адресу) до бібліотеки. Оскільки, Ви переміщували файли, шлях(адреса) могли змінитися. Або видалити бібліотеку з проекту і знову підключити.

Подякували: Lujok1

5 Востаннє редагувалося Lujok (07.03.2016 22:14:41)

Re: Проблеми з проектом

fed_lviv написав:

В NetBeans не працював, але можливо потрібно перевказати шлях (адресу) до бібліотеки. Оскільки, Ви переміщували файли, шлях(адреса) могли змінитися. Або видалити бібліотеку з проекту і знову підключити.

Спочатку не допомагало , але після того як : права кнопка - властивості бібліотеки   повидаляв неробочі  посилання перестало показувати помилку .
Але зараз зявилась інша проблема . Програма ніби працює нормально ,  але коли я хочу змінити мову на мовній панелі (віндос,   alt + shift)  моя программа висне . Раніше такого не було . Помилок не показує лише коли я натискаю "очистить и собрать проект "  зявляеться :
]Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

Це єдине за що я можу зацепитись в пошуку проблеми.  Перше: "Note: Some input files use unchecked or unsafe operations."  На скільки я зрозумів попередження що є нетипизовані :  ArrayList ... colTypesList = new ArrayList...();
А що це означає : Note: Recompile with -Xlint:unchecked for details .   ?

6 Востаннє редагувалося Lujok (07.03.2016 22:12:42)

Re: Проблеми з проектом

Наврядчи ,звичайно , в цьому проблема  бо  в іншому проекті таке ж пише , навіть більше ) :
warning: Utility is internal proprietary API and may be removed in a future release
import java.awt.event.ActionEvent;
Note: D:\проекти_java\21.12.15\HParus\src\hparus\HParusTM.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
1 warning

compile:

тут щось інше .  Таке ,  мабудь прийдеться заново проект переписувати
...
доречі а чим мені може це загрожувати :
warning: Utility is internal proprietary API and may be removed in a future release
import java.awt.event.ActionEvent;
   ?

7 Востаннє редагувалося Lujok (24.03.2016 21:00:15)

Re: Проблеми з проектом

Таж проблема і з іншим проектом . Я просто переписав код з книги Хорстманн, Кей, С, Корнелл, Гари.
Х82 Библиотека профессионала. Java 2. Том 2. Тонкости программирования.:

public class JavaApplicationXMLHorst {

 
    public static void main(String[] args) {
       JFrame frame = new DOMTreeFrame();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      frame.setVisible(true);
          
    }  
}

class DOMTreeFrame extends JFrame {

    public DOMTreeFrame() {
       setTitle("DOMTreeTest");
        setSize(WIDTH, HEIGHT);
        JMenu fileMenu = new JMenu("File");

         JMenuItem openltem = new JMenuItem("Open");
        openltem.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent event)
            {
                openFile();
             }
        });
        fileMenu.add(openltem);
        JMenuItem exitltem = new JMenuItem("Exit");
        exitltem.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent event)
                {
                    System.exit(0);
                }
        }) ;
        this.setPreferredSize(new Dimension(900, 900));
        fileMenu.add(exitltem);
        JMenuBar menuBar = new JMenuBar();
        menuBar.add(fileMenu);
        setJMenuBar(menuBar);  
   }
/**
Открыть файл и загрузить документ
*/
    public void openFile()
    {
        final JFileChooser chooser = new JFileChooser();
        chooser.setCurrentDirectory(new File("."));
        chooser.setFileFilter(new
        javax.swing.filechooser.FileFilter()
        {
            public boolean accept(File f)
            {
                return f.isDirectory() || f.getName().toLowerCase().endsWith(".xml");
            }
           public String getDescription()
           {
             return "XML files";
           }
        });
        int r = chooser.showOpenDialog(this);
        if (r != JFileChooser.APPROVE_OPTION) return;
        File f = chooser.getSelectedFile();
        
        try{
            if (builder == null)
            {
                DocumentBuilderFactory factory= DocumentBuilderFactory.newInstance();
                builder = factory.newDocumentBuilder();
                final org.w3c.dom.Document doc = builder.parse(f);
                final JTree tree = new JTree(new DOMTreeModel(doc));
                tree.setCellRenderer(new DOMTreeCellRenderer());
                setContentPane(new JScrollPane(tree));
                validate();
            }
        }catch (IOException exception){
                JOptionPane.showMessageDialog(this, exception);
        }
        catch (ParserConfigurationException exception){
                JOptionPane.showMessageDialog(this, exception);
        }
        catch (SAXException exception){
                JOptionPane.showMessageDialog(this, exception);
        }
    }
            private DocumentBuilder builder;
            private static final int WIDTH = 700;
            private static final int HEIGHT = 700;  
}


class DOMTreeModel implements TreeModel{
 private Document doc;
   public DOMTreeModel(Document aDoc) {
        this.doc = aDoc;
    }

    @Override
    public Object getRoot() {
      return doc.getDocumentElement(); 
    }

    @Override
    public Object getChild(Object parent, int index) {
        Node node = (Node)parent;
        NodeList list = node.getChildNodes();
        return list.item(index);
    }

    @Override
    public int getChildCount(Object parent) {
        Node node = (Node)parent;
        NodeList list = node.getChildNodes();
        return list.getLength();
    }

    @Override
    public boolean isLeaf(Object node) {
       return getChildCount(node) == 0;
    }

    @Override
    public void valueForPathChanged(TreePath path, Object newValue) {
           
    }

    @Override
    public int getIndexOfChild(Object parent, Object child) {
        Node node = (Node)parent;
        NodeList list = node.getChildNodes();
        for (int i = 0; i < list.getLength(); i++)
         if (getChild(node, i) == child)
                return i;
        return -1;
    }

    @Override
    public void addTreeModelListener(TreeModelListener tl) {

    }

    @Override
    public void removeTreeModelListener(TreeModelListener tl) {

    }    
    
}

class DOMTreeCellRenderer extends DefaultTreeCellRenderer {

    public DOMTreeCellRenderer() {
        
    }
    @Override
    public Component getTreeCellRendererComponent(JTree tree,
        Object value, boolean selected, boolean expanded,
        boolean leaf, int row, boolean hasFocus)
    {
        super.getTreeCellRendererComponent(tree, value,
        selected, expanded, leaf, row, hasFocus);
        Node node = (Node)value;
        if (node instanceof Element)
            setText(elementString((Element)node));
//            setText("\n");   }
        else if (node instanceof CharacterData){
            setText(characterString((CharacterData)node));
        }
        else{
            setText(node.getClass() + ": " + node.toString());
        }
        return this;      
    }
    public static String elementString(Element e){
        StringBuffer buffer = new StringBuffer();
        buffer.append("Element: <");
        buffer.append(e.getTagName());
        NamedNodeMap attributes = e.getAttributes();
        for (int i = 0; i < attributes.getLength(); i++){
            buffer.append (' ' ) ;
            Node attributeNode = attributes.item(i);
            buffer.append(attributeNode.getNodeName());
            buffer.append('=');
            buffer.append('"');
            buffer.append(attributeNode.getNodeValue());
            buffer.append('"');
        }
        buffer.append('>');
        return buffer.toString();
    }

    public static String characterString(CharacterData node) {
            StringBuffer buffer = new StringBuffer(node.getData());
            for (int i = 0; i < buffer.length(); i++){
                if (buffer.charAt(i) == '\r')
                    {
                        buffer.replace(i, i + 1, "\\r");
                    }
                else if (buffer.charAt(i) == '\n'){
                     buffer.replace(i, i + 1, "\\n");
                      i++;
                }
                else if (buffer.charAt(i) == '\t'){
                    buffer.replace(i, i + 1, "\\t");
                }
           }
                if (node instanceof Text){
                    buffer.insert(0, "" ) ;
//                    buffer.insert(0, "Text: " ) ;
                }
                else if (node instanceof Comment){
                     buffer.insert(0, "Comment: " ) ;
                }
                else if (node instanceof CDATASection){
                    buffer.insert(0, "CDATASection: " ) ;
                }
                return buffer.toString();   
    }    
}

На формі є меню (open , close ),  при натисканні open  зявляється Tree структура якого повторює структуру вибранного   XML   документа .  Що цікаво :  я можу переключати розкладку клавіатури до того момента як  нажму   menu-> open    , після того як нажму    menu-> open    программа висне .

Post's attachments

1.png 8.59 kb, 204 downloads since 2016-03-24 

8 Востаннє редагувалося Lujok (24.03.2016 20:59:51)

Re: Проблеми з проектом

якщо відкрити файл XML  та на основі його структури відобразиться Tree  ,  то  коли намагаюсь змінити мову комп  висне

Post's attachments

2.png 12.03 kb, 202 downloads since 2016-03-24 

9 Востаннє редагувалося Lujok (25.03.2016 20:09:30)

Re: Проблеми з проектом

Зявлялось в консолі :

Java Result 1073807364

Погуглив , досить часто зустрічається зависання програм тільк в різних ситуаціях .
Тут ось говориться , як я зрозумів про потоки ,  а я з ними ще не дуже :
http://stackoverflow.com/questions/4817 … 1073807364

2
down vote
From my experience, that error (described as "task is running") occurs when there is a thread in blocking mode, and the thread cannot be terminated by being interrupted (per the rules) so it lingers, causing the program to hang, and requiring a kill shot. I have experienced that error as recently as today (Sept 5, 2012), and that was the cause (because I did it deliberately).

There may be other causes, but that is one distinct possibility.



може хто накраще   розуміється на  англійській  та потоках ,  та допоможе мені розібратися .

п. с.  я вже перевстановлював NetBeans  з усим гамузом  .  але не допомогло .