我正在尝试使用该命令运行我的 JAR 文件java -jar sample.jar,并且我正在使用application.yml具有以下设置的配置文件
spring:
profiles:
active:
- dev
---
server:
port: 8081
spring:
profiles: dev
---
server:
port: 8082
spring:
profiles: test
Run Code Online (Sandbox Code Playgroud)
但应用程序无法识别返回信息
No active profile set, falling back to default profiles: default并将端口设置为默认 8080 的配置文件
我尝试过类似
java -jar sample.jar -Drun.jvmArguments=-Dspring.profiles.active=dev或
java -jar sample.jar -Dspring.profiles.active=dev
在我的pom.xml文件中,我所做的唯一更改是添加<packaging>jar</packaging>属性。
据我所知,maven 配置文件是完全不同的东西,不应该影响 spring 配置文件。
我不知道在哪里寻找问题,因为当我通过Intellij IDEA 中的“运行”按钮启动应用程序时,它工作得很好,并且将每个配置文件设置为活动状态。
这里的实际问题是如何在构建工件时设置要运行的默认配置文件,这样就不需要在运行 jar 的终端命令中放置额外的标志。
我知道有很多像我这样的问题,但他们接受的大多数答案在我的情况下不起作用,其余的也没有得到解答。如果您知道这里可能存在什么问题,请告诉我。预先感谢您的任何帮助!
我遇到的问题是,我的 Spring Boot JSF 应用程序可以在 IntelliJ 中运行,但不能作为可执行 JAR 运行。应用程序启动时没有问题,但无法解析 xhtml 模板。在 IntelliJ 中,一切都按预期进行。
我发现这个问题涉及类似的问题。我查看了文件结构,看不出有什么区别。
我的maven文件结构:
src
| main
| resources
| META-INF
| resources
| index.xhtml
| faces-config.xml
Run Code Online (Sandbox Code Playgroud)
因此,当我启动 Spring Boot 应用程序时,它将在目标/类处获取
那里的结构是:
target
| classes
| META-INF
| resources
| index.xhtml
| faces-config.xml
Run Code Online (Sandbox Code Playgroud)
在创建的可执行 JAR 中,结构为
org
BOOT-INF
| lib
| classes
| de ...
META-INF
| resources
| index.xhtml
| faces-config.xml
Run Code Online (Sandbox Code Playgroud)
据我了解各种网站和答案,这应该是 jar 中获取 xhtml 文件的正确结构。但这对我不起作用。出于无奈,我将 META-INF 目录复制到 BOOT-INF/classes 目录中,并在另一次迭代中将 META-INFO 中的资源目录复制到 BOOT-INF/classes …
我需要执行为我的应用程序编写的诊断程序。该应用程序正在 Kubernetes Pod 中运行/部署。我想在 Kubernetes pod 中复制诊断可执行 jar 文件并在不停止 pod 的情况下执行它。如何才能实现这一目标?是否有特定的方法来使用 Kubernetes pod 环境运行可执行 jar?
对于Manifest中具有Main Class的可执行Jar:
当我使用java -jar myjar.jar启动它时,如何在运行时找到此jar的安装目录?
我想要做的是为Flyway开发一个命令行客户端.
该工具将安装以下文件夹结构:
INSTALLATION_PATH
|
-- bin
| |
| --start.sh (launches flyway.jar)
|
-- lib
| |
| --flyway.jar (contains Main class, loads flyway.properties)
|
-- conf
|
--flyway.properties (configuration)
Run Code Online (Sandbox Code Playgroud)
flyway.jar如何解析INSTALLATION_PATH?
我正在开发一个涉及servlet的项目.使用JD Java Decompiler for Eclipse我可以反编译并读取构成参考库中jar的所有类文件.是否可以以类似的方式读取WAR文件的内容?
另外,有没有办法打破可执行jar文件并读取原始代码?
我在eclipse中制作了一个hello world程序,我想知道如何从eclipse中运行它(而不是在控制台上).我想像你一样运行它.exe.这可能吗?
我正在尝试向我的JavaFX 2应用程序添加一个Icon,但我找到的方法似乎不起作用.
Image icon = new Image(getClass().getResourceAsStream("/images/icon.png"));
stage.getIcons().add(icon);
Run Code Online (Sandbox Code Playgroud)
图标大小为32x32.
当我尝试
Image icon = new Image("http://goo.gl/kYEQl");
Run Code Online (Sandbox Code Playgroud)
它在Netbeans和可运行的jar中都有效.
我希望这可以解决.
我有一个Swing应用程序,试图将其打包到可运行的JAR文件中。它的DAO功能的一部分是以CSV格式读写内部的.dat文件src/main/resources/dictData.dat
我的问题是,每次尝试运行jar时,我都会
java.io.FileNotFoundException: file:/Users/jason/projects/test-dict/target/
dictionary-jar-with-dependencies.jar!/dictData.dat
(No such file or directory)
Run Code Online (Sandbox Code Playgroud)
从命令行。这是通过一个罐子mvn package和maven-assembly-plugin规格
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.4.1</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>com.test.dictionary.init.AppInit</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
Run Code Online (Sandbox Code Playgroud)
我有一个FileIO类实现,可以处理对文件的读写。
public class FileIO implements IO{
private static final String DICTIONARYFILE = "dictData.dat";
private File dataFile;
private Writer dataWriter;
private Reader dataReader;
@Override
public Map<String, Word> loadDataFile(){
ClassLoader classLoader = getClass().getClassLoader();
Map<String, Word> dictMap = new HashMap<>();
try { …Run Code Online (Sandbox Code Playgroud) 我试图将我的GUI项目导出为eclipse中的runnable jar文件.我选择了主类并创建了运行配置.出于某种原因,当我尝试通过双击启动程序时,我从JVM启动器收到以下错误消息:
"无法找到主类,程序将退出"
public class Main {
public static void main (String[] args)
{
JFrame fr = new JFrame();
fr.setSize(300,300);
fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
fr.setVisible(true);
}}
Run Code Online (Sandbox Code Playgroud)
我为这个问题创建了这个简单的测试,我得到了同样的信息.Main在默认包中的源文件夹"src"中.在Run Configurations中,我只是选择了项目,我选择了这个类作为主类.
谢谢
我想从powershell运行一个jar文件.直到现在我能够找到这个:
Start-Process -FilePath java -ArgumentList '-jar Upload_Download.jar FilePickupPath= $pickuppath FileDownloadPath= $download' -PassThru -RedirectStandardError E:\stderr.txt
Run Code Online (Sandbox Code Playgroud)
一些如何不起作用.有什么建议?
executable-jar ×10
java ×8
jar ×6
maven ×2
classpath ×1
deployment ×1
executable ×1
execute ×1
export ×1
icons ×1
installation ×1
javafx-2 ×1
jsf ×1
kubernetes ×1
powershell ×1
servlets ×1
spring ×1
spring-boot ×1
swing ×1
war ×1
xhtml ×1