Хобрук: Ваш путь к мастерству в программировании

Как изменить папку сборки IDEA с TEMP на что-то другое?

Я пытаюсь запустить:

import java.applet.Applet;
import java.awt.*;
import java.net.URL;

public class img extends Applet
{
    private Image img;
    public void init()
    {
        img = null;
    }
    public void loadImage()
    {
        try
        {
            img = getImage(getCodeBase(), "winter.jpg");
            System.out.println(img);
            System.out.println(prepareImage(img, 300, 400, this));
        }
        catch(Exception e){}

        System.out.println(getDocumentBase());
    }
    public void paint(Graphics g)
    {
        if (img == null)
            loadImage();
        g.drawImage(img, 0, 0, this);
    }
}

Но он не находит winter.jpg, если только он не находится в: file:/C:/Users/Admin/AppData/Local/Temp/

System.out.println(getDocumentBase()); возвращает: file:/C:/Users/Admin/AppData/Local/Temp/AppletPage1228891259548967526.html Вместо: C:/Users/Admin/Dropbox/dev/idea/Exam3/out/production/Exam3/ (где .class файлы находятся)

Я использую IntelliJ IDEA 12.

Я просто хочу поместить свои файлы JPEG в папку Exam3 вместо папки Temp. Любые идеи?

27.01.2013

Ответы:


1

Обходной путь для загрузки ресурса с помощью getDocumentBase() вы можете получить URL-адрес, используя getResource класса, который получает ресурсы относительно класса.

URL base = img.class.getResource("/data/winter.jpg");
Image img = ImageIO.read(base);

где данные - это папка в папке Exam3 в вашем случае, которая содержит этот файл класса.

20.10.2014
  • очень хороший. Я предпочитаю хранить ресурсы в файле src. Для этого вы также можете сделать this.getClass() и применить getResource к этому 13.02.2016
  • Новые материалы

    Решения DBA Metrix
    DBA Metrix Solutions предоставляет удаленного администратора базы данных (DBA), который несет ответственность за внедрение, обслуживание, настройку, восстановление базы данных, а также другие..

    Начало работы с Блум
    Обзор и Codelab для генерации текста с помощью Bloom Оглавление Что такое Блум? Некоторые предостережения Настройка среды Скачивание предварительно обученного токенизатора и модели..

    Создание кнопочного меню с использованием HTML, CSS и JavaScript
    Вы будете создавать кнопочное меню, которое имеет состояние наведения, а также позволяет вам выбирать кнопку при нажатии на нее. Финальный проект можно увидеть в этом Codepen . Шаг 1..

    Внедрите OAuth в свои веб-приложения для повышения безопасности
    OAuth — это широко распространенный стандарт авторизации, который позволяет приложениям получать доступ к ресурсам от имени пользователя, не раскрывая его пароль. Это позволяет пользователям..

    Классы в JavaScript
    class является образцом java Script Object. Конструкция «class» позволяет определять классы на основе прототипов с чистым, красивым синтаксисом. // define class Human class Human {..

    Как свинг-трейдеры могут использовать ИИ для больших выигрышей
    По мере того как все больше и больше профессиональных трейдеров и активных розничных трейдеров узнают о возможностях, которые предоставляет искусственный интеллект и машинное обучение для улучшения..

    Как построить любой стол
    Я разработчик программного обеспечения. Я люблю делать вещи и всегда любил. Для меня программирование всегда было способом создавать вещи, используя только компьютер и мое воображение...