Ответы пользователя по тегу Java
  • Как создать jar файл из Java программы?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Используете ли вы Maven? Если да, то что прописано в pom.xml? В частности, packaging
    Если там xml, то смените на jar
    Ответ написан
    Комментировать
  • Почему метод не возвращает значение?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    public int giveBalance(int amount) {
         return amount;
    }


    Вот, так надо получить переменную. А дальше вывести в консоль
    int a = giveBalance(10);
    System.out.println(a);
    Ответ написан
    Комментировать
  • Что посмотреть по созданию dependency?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Добрый день!
    Не очень понятен ваш вопрос.

    Правильно ли я понимаю, что создали свое приложение / библиотеку и хотите, чтобы она была доступна по собственному dependency?
    Я например, как-то раз закинул небольшую библиотеку на Maven Central через nexus
    https://central.sonatype.org/publish/release/
    Можете также глянуть на https://packagecloud.io/
    https://dzone.com/articles/publish-your-artifacts-...

    Или речь идет о мультимодульных проектах? Если так, то нужно проект разделить на модули. А затем прописать зависимость одного модуля от другого.
    https://www.baeldung.com/maven-multi-module
    Ответ написан
  • Как в spring посмотреть при дебаге запроса все его параметры?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    В asp.net есть объект HttpRequest через который в контроллере можно увидеть все параметры запроса, начиная от url и заканчивая заголовками и куками. Есть ли подобный аналог в Spring?

    Да, аналог есть - https://docs.spring.io/spring-framework/docs/curre...
    Ответ написан
  • Как поменять элементы массива?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Добрый день.
    Ответ на ваш вопрос: https://www.baeldung.com/java-invert-array
    Ответ написан
    Комментировать
  • Возможно ли спарсить josn file не создавая его объект?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Не создавая объект вы можете прочитать файл в строку. И в этом случае вообще все равно, что за файл читать, будь-то json или еще какой-нибудь.
    Если подразумевается дальнейшяя работа с данными содержащимися в json, то лучше все-таки спарсить в объект.
    Если лень писать структуру объекта, то https://www.jsonschema2pojo.org/ вам в помощь. Просто вставьте json файл туда и получите его в виде pojo. Поддерживается Gson, Jackson и т.д.
    Можно ли считать и ввести json file без создание объекта?

    Вы конечно можете не создавать специализированный объект (Person) и вычитать его в строку String
    Но как я сказал выше, если подразумевается дальнейшая работа, то читайте в объект.

    Знаю, вопросы оооочень тупые, но все таки решил спросить.

    Не бойтесь задавать вопросы. Как говорится, тяжело в учении...
    Ответ написан
  • Что вписать в .jar или .bat файлы для автозапуска?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Еще раз приветствую!
    А такое вообще возможно?

    Да, возможно. Вы можете создать батник и при запуске добавить в планировщик Windows задачу
    Так как вы обозначили платформу Windows, то отмечу что в Windows есть "Планировщик задач" (Task Scheduler),
    Вот, несколько полезных ссылок по этому вопросу:

    https://stackoverflow.com/questions/12034177/runni...
    https://stackoverflow.com/questions/15783553/run-a...
    https://stackoverflow.com/questions/31521553/how-t...
    https://www.windowscentral.com/how-create-task-usi...
    https://www.computerhope.com/forum/index.php?topic...
    Ответ написан
  • Запуск Java программы, без установки интегрированной среды разработки возможен?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Добрый день!
    Если честно, то у вас путаница с терминами, так что внесу ясность:

    Запуск Java программы, без установки интегрированной среды разработки возможен?

    Интегрированная среда разработки (IDE) - это программы для разработки ПО. Например, Intellij IDEA, Eclipse и др.
    jdk - Java development kit - это комплект для разработки Java приложений.

    Есть программа Jframe, и я хочу чтобы еë можно было запустить без JDK

    Любой jar можно запустить без jdk, так как для запуска программы достаточно jre.
    Для наглядности:
    606cce89baa5b840749460.jpeg

    Другое дело, что вы хотите запустить jar без надобности установки на устройство пользователя jre, как например, это делает IDE - Intellij IDEA.
    Прочитайте вот, эту статью - https://eax.me/java-without-jvm/

    если да то нужен только .jar или ещë и .bat?

    jar должно быть достаточно. По факту батник при запуске будет через cmd запускать jar. Для кросплатформенности при использовании bat, нужно будет еще создать и sh скрипт, чтобы запустить в UNIX системах.

    Есть программа Jframe

    JFrame это не программа, а класс из пакета awt.
    https://docs.oracle.com/javase/7/docs/api/javax/sw...
    Ответ написан
    2 комментария
  • Как сохранить в таблице картинку при изменении других полей?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Как сохранить в таблице картинку при изменении других полей?

    А зачем вы удаляете / изменяете картинку при изменении полей?
    Допустим, что есть некий эндпоинт, куда нужно отправлять POST запрос для загрузки картинки и принимает он MultiPartFile.
    Соответственно, при загрузки новой картинки можно отправить аякс запрос на этот урл, а id картинки назначить для сущности, которая добавляется из формы.
    А значит, при изменении других данных вы никоим образом не будете изменять картинку и соответственно, она не удалится.
    Ответ написан
  • Что использовать для написания андроид приложения на Java?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Дело вот в чём: я написал простое приложение в IntelliJ IDEA, зашёл в Android studio для сборки apk, но там не хочет импортироваться swing.

    Вы можете и не заходить в Android Studio. Можно собрать apk и в IDEA. Другое дело, что вы пытаетесь скрестить ужа с ежом, пытаясь использовать swing в андроид.
    В теории можно конечно же swing запустить на android, вопрос в том, а надо ли так изворачиваться. Однозначно, нет. Ну а если дело принципа, то - вот решение

    Насчёт последнего, в IntelliJ IDEA мне удалось собрать .jar, а как сделать именно .exe?

    launch4j.sourceforge.net
    Ответ написан
    Комментировать
  • Что нужно знать о maven, чтобы добавить его в своё резюме?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Добрый день!
    По maven можно много чего изучить. Я как-то раз приобрел вот, этот курс на Udemy и в принципе, он понравился. Также конечно же есть куча бесплатных курсов и видеоматериалов.
    - научитесь работать с maven на уровне cli
    - изучите структуру maven проекта
    - изучите плагины и зависимости, BOM. Обратите внимание на dependencyManagement & pluginManagement
    - разберитесь в maven lifecycle, maven wagon, waven reactor и т.д.
    - изучите мультимодульность
    - изучите профили maven
    - посмотрите, как можно деплоить приложения на maven central при помощи различных сервисов (packageCloud, nexus)
    Ответ написан
    Комментировать
  • Как реализовать страницу для тестирования учеников?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Здравствуйте!
    Во-первых, непонятно в каком объеме у вас на данный момент реализовано текущее приложение на Spring.

    Сайт на подобие визитки.

    И вообще странно, что если это просто сайт-визитка, то зачем она писалась на Spring + VueJS. Там банально CMS WordPress хватит с лихвой. Ну в крайнем случае можно было взять рнр фреймворк (Yii2, Laravel) - обошлось бы дешевле для школы)

    Нужно прикрутить к нему сервис для тестирования учеников, с возможностью заходить в личный кабинет для ученика и учителя отдельно.


    1) Эндпоинты для ЛК учителя и ученика должны быть разными.
    2) Эндпоинты аутентификации учителя и ученика тоже можно сделать разными.
    3) Тестирование бывает разным. Нужно для начала разобраться с тем, какое тестирование вам нужно и как его можно реализовать.

    Например, есть тестирование при котором проверяется правильность выбранного ответа. Т.е. пользователь выбрал ответ "а" и соответственно, проверяем корректный ответ, хранимый в БД. Этот тест можно усложнить тем, что каждый раз при прохождении теста изменять местами варианты ответов, чтобы ученики не запоминали ответы по буквам.

    Другой вид тестирования, когда каждому ответу присваивается определенный балл. Далее высчитывается набранная сумма и выдается ему некий результат (часто встречается в психологических тестах).
    Иной вид тестирования, когда проверяется количество выбранных ответов варианта "А", "В" и т.д. Т.е. пользователь выбрал "А" - 5 раз, "В" - 2 раза. И если например, А < 5 и B >2, то отдаем один результат, иначе другой и т.д.

    4)
    Особенно как лучше сделать саму логику обработки ответов и последующую их проверку?

    Например, по мере прохождения теста формируем массив ответов и записываем их в LS, чтобы в случае чего не потерять данные. Затем по сабмиту "отправить на проверку" отправляем массив на сервер и перебирая ответы сравниваем их со значениями в БД. Если предусматривается возможность изменение варианта ответа для того или иного вопроса, то при изменении ответа, вносим правки в массив и сохраняем LS.

    Как реализовать страницу для тестирования учеников?

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

    Либо попробуйте поискать готовые решения, которые потом можете встроить в сайт. Правда, не самое лучшее решение.
    Например, https://www.classmarker.com/online-testing/how-to-...
    https://quiz.proprofs.com/how-do-i-embed-a-quiz-on...
    https://www.riddle.com/blog/embed-online-quizzes-site/
    Google

    В общем, все зависит от ваших навыков программирования, от бюджета, от сроков и т.д.
    Самое быстрое решение возможно, использование CMS с готовыми плагинами.
    Например, WordPress + плагины
    https://ru.wordpress.org/plugins/quiz-master-next/
    https://ru.wordpress.org/plugins/wp-quiz/
    https://www.wpbeginner.com/showcase/best-quiz-plug...
    https://ru.wordpress.org/plugins/hd-quiz/
    https://ru.wordpress.org/plugins/quiz-maker/
    Google

    Для более объективного ответа нужно больше данных.
    Ответ написан
    2 комментария
  • Как решить ошибку Process finished with exit code 1 в Java Selenium?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    java.lang.IllegalStateException: The driver executable must exist: c:\tools\chromedriver

    Проверьте, лежит ли драйвер chromedriver для браузера Chrome по пути c:\tools\chromedriver
    Если нет, то загрузите
    Также было бы неплохо исходный код предоставить или посмотрите есть ли в вашем коде:
    System.setProperty("webdriver.chrome.driver",
                "c:\\tools\\chromedriver");
    Ответ написан
    Комментировать
  • Почему maven не находит ApiContextInitializer из Telegram bots api?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Ну судя по всему этот класс был удален в указанной вами версии.

    Вот, подробная информация:
    https://github.com/rubenlagus/TelegramBots/wiki/Ho...

    ApiContextInitializer.init(); has been removed and is not required anymore, instead:

    TelegramBotsApi telegramBotsApi = new TelegramBotsApi(DefaultBotSession.class);
    
    // When using webhook, create your own version of DefaultWebhook with all your parameters set.
    TelegramBotsApi telegramBotsApi = new TelegramBotsApi(DefaultBotSession.class, defaultWebhookInstance);
    Ответ написан
    2 комментария
  • Какие два класса не наследуются от Object?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Ответ действительно быстрее находится поисковиком.
    1) Класс Object не наследуется от себя же, так как он является суперклассом. От него наследуются другие классы.

    А точно ли вопрос звучал именно так?
    Какие два класса не наследуются от Object?

    Просто например, тип данных enum тоже не наследуется от Object, потому что наследуется от Enum.
    Ответ написан
    1 комментарий
  • Как вставить видео в android-приложение?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Добрый день!
    Совсем недавно понадобилось написать нечто похожее. Я не являюсь андроид разработчиком, но я написал бекенд для приложения и примерно знаю, как устроена клиентская часть.
    Так вот:
    1) Важно понять, как именно вы планируете доставлять контент до клиента, т.е. как видео будет поставляться в приложение. Если в приложении периодически должны добавляться видео, то понятное дело, что запаковывать их в приложение не имеет смысла. Тогда есть смысл либо создавать zip архив, который после установки приложения будет скачан, распакован и размещен где-то в internal storage, либо (а еще лучше) написать полноценный бекенд (REST сервис), который позволяет получать список ссылок на скачивание видео, информацию о видео (медиаданные) и т.д.
    2) Если вы не планируете периодически публиковать новые видео, то есть смысл запаковать его в приложение.

    В моем случае это было реализовано следующим образом. Был REST сервис, откуда можно было получать ссылку на скачивание видео и других данных (миниатюра к видео и т.д.).
    А также допонительно была доступна ссылка на стриминг видео. Соответственно, пользователь мог посмотреть видео онлайн, а в случае, если в настройках он включил офлайн режим, то видео по REST скачивалось на телефон и было доступным в офлайн режиме.

    Соответственно, в зависимости от ваших целей может понадобится разработчик, которому потребуется поднять бекенд
    Ответ написан
    Комментировать
  • В чем тут проблема может быть(Selenium WebDriver + JAVA)?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Добрый день!
    Во-первых, при написании вопроса выкладывайте код ошибки и сам код обернув его соответствующим тегом. Скриншоты не самая лучшая идея, ибо они ухудшают читабельность + сложно комментировать тот или иной код, а копировать ваш код со скриншота, затея так себе.

    Что касается вашей проблемы, то вы столкнулись с сайтом, который формирует контент динамически (т.е. это некий js фреймворк - angular, svelte, vue, react etc.). Формируя контент динамически некоторые селекторы класса формируются тоже динамически. Соответственно, выбор элемента по CSS классу не сработает. или же сработает не всегда А так как не у каждого элемента есть ID, то использовать его тоже не получится.
    Что можно сделать?
    - Использовать XPATH, но не привязывайтесь к классу.
    Хотя по своему опыту скажу, что как-то раз попался сайт, который к тому же при каждом обновлении страницы изменял структуру виртуального DOM и соответственно, выборка по XPATH тоже не работала.
    С другой стороны, если вы используете Selenium для разработки некоего парсера, то лучше изучить АПИ Яндекс Маркета и работать с ним.
    https://yandex.ru/dev/market/content-data/
    https://yandex.ru/dev/market/index/
    Ответ написан
  • Как сохранить сессию логина в selenium?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Вот, например:
    https://sqa.stackexchange.com/questions/15594/sele...
    Set<Cookie> allCookies = driver.manage().getCookies();


    driver = new FirefoxDriver();
    for(Cookie cookie : allCookies)
    {
        driver.manage().addCookie(cookie);
    }
    Ответ написан
  • Как взять данные из ответа apache CloseableHttpClient?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Добрый день!
    Из ответа видно, что вы получаете ответ в формате JSON. Далее вам необходимо десериализовать JSON в pojo.
    Существуют различные либы для этого. Можете взять Jackson или GSON.
    Вот, аналогичный вопрос:
    https://stackoverflow.com/questions/6949329/how-de...
    Ответ написан
    Комментировать
  • Exception in Application start method при включении JavaFX-приложения на IntelijIdea, в чем проблема?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Добрый день!
    Чувствую, что буду ванговать, но на 82-й строке у вас ClearBut.setOnAction()
    А вы прописали fx:id для ClearBut в sample.fxml? Если нет, то пропишите.

    Так как вы используете IDEA, то можете попробовать следующее:
    Зайдите в режим дебага.
    В нижней панели слева выберите add breakpoint
    Далее выберите add exception breakpoint (введите в поиск NullPointerException).
    Затем запустите приложение заново и посмотрите почему на строке 82 выбрасывается NPE.

    P.S. переменные в коде у вас названы с большой буквы, а должны начинаться с маленькой согласно naming convention (это для общего развития).
    Ответ написан
    Комментировать