小编ToF*_*oFi的帖子

将Java可执行文件(使用launch4j)固定到Windows 7任务栏

经过半天的搜索和尝试,我终于放弃了.

我有一个java应用程序,我创建一个可运行的jar(包括任何其他库,只有一个jar文件).使用launch4j和runnable jar我正在创建一个可执行文件"MyApp.exe".

可执行文件工作正常,但我想将它固定到我的Windows 7任务栏.现在,我只有任务栏条目"关闭窗口".

用JNA阅读并实现以下解决方案后

我的应用程序在gui中正确显示它的"应用程序用户模型ID"(仅用于测试目的).

但是:我的程序在任务管理器中显示为"javaw.exe",我仍然无法将其固定到任务栏,即使我设置了launch4j选项"自定义进程名称和XP样式清单".

背景信息:我正在使用Windows 7管理员帐户,我不希望该应用程序需要管理员权限.

无论如何,如果我从上下文菜单中"以管理员身份"启动应用程序并确认UAC消息,我现在可以固定到任务栏.但是:即使我正确设置了"应用程序用户模型ID",Windows仍然希望固定"javaw.exe",即使我的程序现在在TaskManager中显示为"MyApp.exe".

我完全糊涂了.但我显然不是唯一一个有这些问题的人.=>请参阅Gregory Pakosz在使用JNA获取/设置应用程序标识符时的最后评论

最后的问题:

  1. Gregory Pakosz与JNA合作设置"应用用户模型ID"(/sf/answers/135018131/)正在为我工​​作.但是,Windows仍然将我的应用程序识别为"javaw.exe"的实例.还有什么我需要做的?
  2. 也许有些窗户或java更新在这里打破了什么?
  3. 我是否真的必须使用提升的用户权限运行我的应用程序?我真的不想......
  4. 我必须在launch4j中设置更多选项吗?
  5. 我是否必须在launch4j中使用清单文件?

java taskbar jna launch4j windows-7

29
推荐指数
1
解决办法
5216
查看次数

来自SOCKS服务器的错误回复,而我使用HTTP代理(使用Apache HTTP库)

我知道有很多关于错误的问题,这些错误Malformed reply from SOCKS server主要指向代理的错误配置.

但是,就我而言,我正在使用系统HTTP(!)代理来执行带有apache httpclient库4.3.5(httpcore 4.3.2)的POST请求,如下所示:

SystemDefaultRoutePlanner routePlanner = new SystemDefaultRoutePlanner(
        ProxySelector.getDefault());
CloseableHttpClient httpclient = HttpClients.custom()
        .setRoutePlanner(routePlanner)
        .build();
Run Code Online (Sandbox Code Playgroud)

这也是/sf/answers/1452048181/中的建议

在大多数情况下,这个httpclient和以下的http POST请求都能很好地工作.但是,在一个客户,它失败并出现以下日志错误:

Mrz 05, 2015 10:11:04 AM org.apache.http.impl.execchain.RetryExec execute
Information: I/O exception (java.net.SocketException) caught when processing request to {}->http://proxy.local:80->http://my-webservice.tld:80: Malformed reply from SOCKS server
Mrz 05, 2015 10:11:04 AM org.apache.http.impl.execchain.RetryExec execute
Information: Retrying request to {}->http://proxy.local:80->http://my-webservice.tld:80
Run Code Online (Sandbox Code Playgroud)

本地系统代理设置(在Windows 7上)未配置为SOCKS代理,而是配置为HTTP代理!我证实了这一点通过登录不同RoutePlannerProxy参数:

TunnelType: PLAIN
TargetHost: http://my-webservice.tld:80
ProxyHost: http://proxy.local:80
ProxyPort: 80
ProxyType: HTTP
Run Code Online (Sandbox Code Playgroud)

但是,我的POST请求未正确发送.在代理日志文件中,它显示如下: …

java proxy http-proxy apache-httpclient-4.x

8
推荐指数
0
解决办法
1996
查看次数

如何更改launch4j生成的exe文件的语言参数?

我正在生成一个我的java程序的Windows可执行EXE文件,其中包含Eclipse中的init4j的ANT任务.在ANT任务中,我使用保存的launch4j配置文件(xml)并另外覆盖版本信息.

<launch4j
    configFile="${launch4j.config.dir}/paginaEPUBChecker.xml"
    fileVersion="${program.version.number}"
    txtFileVersion="${program.version.txtNumber}"
    productVersion="${program.version.number}"
    txtProductVersion="${program.version.txtNumber}"
/>
Run Code Online (Sandbox Code Playgroud)

到目前为止,一切都很完美.可执行文件已构建并运行良好.

但是当查看文件的属性详细信息时(右键单击=> properties => details)我得到"language"属性,其值为"English(US)",即使我正在使用德语Windows版本,因此我希望它成为"德国人".

你知道是否有一个(可能隐藏或未记录?)launch4j配置选项将语言属性设置为"德语"?

java eclipse ant exe launch4j

7
推荐指数
1
解决办法
1775
查看次数

在 Linux 上交付 Java 软件的最佳方式是什么?

我有一个跨平台的 Java 项目。对于 Windows 和 Mac OS XI,通过 ANT 任务交付由“launch4j”和“jarbundler”生成的 .EXE 或 .APP 文件。

现在我也在寻找一种方法来将这款软件交付给 Linux 用户。目前,我所拥有的只是一个可运行的 JAR。

有没有比提供打包为 .tar.gz 的可运行 JAR 更好的方法?可能是可执行文件显示程序图标的一种简单方法(可运行的 JAR 不能)?

java linux

5
推荐指数
1
解决办法
302
查看次数

用于 Java 6 和 Java 7 的 Mac OS X JavaApplicationStub

我正在开发具有本机可执行文件的跨平台 Java 应用程序。对于 Mac OS XI,使用Jabundler作为 ANT 任务来创建 App 包。

现在 Oracle 发布了 Java 7 和它自己的 ANT 任务“ Appbundler ”,我遇到了一个问题。

使用带有 Jarbundler 的原生 Mac OS X JavaApplicationStub 仅适用于 Apple Java 6,使用带有 Appbundler 的 Oracle JavaApplicationStub 仅适用于 Java 7。

我确实非常了解这个背景,但我想知道是否有一个 JavaApplicationStub 可用于 Java 6 和 Java 7。 到目前为止我还没有找到......

顺便说一句:JavaApplicationStub 是否必须是本机 C/C++/C# 二进制文件?或者它也可以是一个可执行的shellscript?


更新:

shell 脚本是本机 JavaApplicationStub 的一种可能替代方法。

我扩展了Ian Roberts 的基本 shell 脚本,并在 GitHub 上将其作为"universalJavaApplicationStub" 发布。它现在支持 Apple Java 6 和 Oracle Java 7 以及Info.plist …

java macos

5
推荐指数
1
解决办法
5496
查看次数

如何解锁 JFrog Artifactory 中锁定的管理员用户?

我安装了 JFrog Artifactory 并进行了设置,还启用了“n 次登录失败后锁定用户”。

\n\n

几天后,我尝试使用管理员用户登录,但失败了 5 次。只是一秒钟忘记了密码并尝试了太多次,没有考虑后果。

\n\n

现在我收到这条消息

\n\n
User admin is Locked.\nContact System Administrator to Unlock The Account.\n
Run Code Online (Sandbox Code Playgroud)\n\n

并且无法再以管理员身份登录,这意味着我根本无法解锁管理员帐户... \xc2\xaf_(\xe3\x83\x84)_/\xc2\xaf

\n\n

我已经遵循了常见问题解答“重新创建默认管理员用户”(https://www.jfrog.com/confluence/display/RTF/Managing+Users#ManagingUsers-RecreatingtheDefaultAdminUser),但我无法确认密码重置是否有效 \xe2\x80 \x93 管理员帐户仍被锁定。

\n\n

我还没有为 Artifactory 设置数据库,只是在文件系统上使用 Ubuntu 上的普通 debian 包。所以锁必须存放在任何地方,对吗?

\n\n

更新:系统上没有其他管理员用户。

\n

artifactory

5
推荐指数
1
解决办法
9648
查看次数

在Windows上删除JTextPane中的默认填充

为了在Java Swing GUI上显示信息,我使用了JLabel组件和的混合JTextPanes.

如下图所示,JLabels除了右下角标有红色和黄色的标签外,所有标签都是如此.这是一个JTextPane,因为我不知道渲染前的文本长度,它必须包装(这不是在一个工作JLabel,对吧?).

Windows和Mac上的不同渲染

左列右对齐,右边距为5,右列左边对齐,边距为零.

在Eclipse WindowBuilder和Windows 7渲染中,JTextPane显然有一个小的填充,我无法删除.

令人惊讶的是,这个填充没有在我的Mac(Mountain Lion)上显示,并且JTextPane完全对齐.

有没有办法在Windows和Mac上实现相同的对齐外观?为什么JTextPane组件在窗户上有这个烦人的填充?

java swing jlabel jtextpane

3
推荐指数
1
解决办法
1184
查看次数

将cellpadding添加到Java JTable

我正在尝试实现Swing JTable.我在http://docs.oracle.com/javase/tutorial/uiswing/components/table.html#simple上关注了tuorial

我希望表格单元格不可编辑(这个工作),我希望表格单元格有更多填充到它的边框.就像HTML中的cellpadding一样.

这是我的代码的一部分,并且cellpadding事情不起作用.

class BoardTableCellRenderer extends DefaultTableCellRenderer {

    private static final long serialVersionUID = 1L;

    public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int col) {
        super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, col);
        setBorder(BorderFactory.createEmptyBorder(15,15,15,15));
        return this;
    }
}

String[] columnNames = {"Datei",
        "Zeile",
        "Zeichen",
        "Fehler", "test"};

Object[][] data = {
        {"Kathy", "Smith", "Snowboarding", new Integer(5), new Boolean(false)},
        {"John", "Doe", "Rowing", new Integer(3), new Boolean(true)},
        {"Sue", "Black", "Knitting", new Integer(2), new Boolean(false)},
        {"Jane", "White", "Speed …
Run Code Online (Sandbox Code Playgroud)

java swing jtable tablecellrenderer

2
推荐指数
1
解决办法
7137
查看次数