小编dm7*_*m76的帖子

makefile:如何在basename中添加前缀?

我有一个像这样的文件路径列表:

FILE_PATH := a1.so a2.so bla/a3.so bla/a3.so bla/blo/a4.so....
Run Code Online (Sandbox Code Playgroud)

我需要在basename中添加一个前缀以获得:

FILE_PATH_PREFIX := liba1.so liba2.so bla/liba3.so bla/liba3.so bla/blo/liba4.so....
Run Code Online (Sandbox Code Playgroud)

任何的想法 ?

makefile prefix

38
推荐指数
1
解决办法
6万
查看次数

通过sql脚本插入BLOB?

我有一个H2数据库(http://www.h2database.com),我想通过简单的简单sql脚本(例如填充测试数据库)将文件插入BLOB字段.我知道如何通过代码来做到这一点,但我找不到如何做sql脚本本身.

我试图通过这条路,即

INSERT INTO mytable (id,name,file) VALUES(1,'file.xml',/my/local/path/file.xml);
Run Code Online (Sandbox Code Playgroud)

但这失败了.

在代码(例如java)中,很容易创建一个File对象并将其传递,但​​直接从sql脚本中,我被卡住了......

任何的想法 ?

大卫

sql scripting blob h2

30
推荐指数
2
解决办法
7万
查看次数

LD_PRELOAD等效于Windows预加载共享库

我正在尝试做LD_PRELOAD所做的事情,即将Windows上的共享库或DLL文件预加载到给定程序以覆盖某些功能.

是否有LD_PRELOADWindows 的等价物?

我没有任何具体的功能.我只知道这在Linux上是可行的,我很好奇如何在Windows上完成本机DLL的重载.

overloading shared-libraries inter-process-communicat

26
推荐指数
1
解决办法
1万
查看次数

java:unchecked调用getConstructor(java.lang.Class <?> ...)

我使用反射来构造一个以File作为参数的类(ConfigBuilder):

Class myClassType = Class.forName(className);
Class[] types = new Class[] { File.class };
Constructor cons = myClassType.getConstructor(types);
Object[] constructorArgs = new Object[] { myFile };
cb = (ConfigBuilder) cons.newInstance(constructorArgs);
Run Code Online (Sandbox Code Playgroud)

但我得到这个警告:

warning: [unchecked] unchecked call to getConstructor(java.lang.Class<?>...) as a member of the raw type java.lang.Class
Constructor cons = myClassType.getConstructor(types);
Run Code Online (Sandbox Code Playgroud)

显然,似乎getConstructor期望一个泛型类型,所以我尝试了类似的东西:

Class<?>[] types = new Class<?>[] { File.class };
Run Code Online (Sandbox Code Playgroud)

但我得到了同样的警告信息

任何的想法 ?

大卫

java reflection

16
推荐指数
2
解决办法
7343
查看次数

如何使用jaxb和Ant xjc任务处理多个xsd模式?

我正在使用jaxb从Ant脚本中的xml模式生成java对象类,如下所示:

<!-- JAXB compiler task definition -->
<taskdef name="xjc" classname="com.sun.tools.xjc.XJCTask"
                    classpathref="master-classpath"/>

<!-- Generates the source code from the ff.xsd schema using jaxb -->
<target name="option-generate" description="Generates the source code">
    <mkdir dir="${generated-src.dir}/${option.dir}"/>
    <xjc schema="${config.dir}/ff.xsd" destdir="${generated-src.dir}"
         package="${option.package.name}">
        <arg value="-Xcommons-lang" />
        <arg value="-Xcommons-lang:ToStringStyle=SHORT_PREFIX_STYLE" />
        <produces dir="${generated-src.dir}" includes="**/*.java" />
    </xjc>
</target>
Run Code Online (Sandbox Code Playgroud)

现在,这对于一个模式(在此示例中为ff.xsd)非常有效.如何处理多个模式(即几个xsd文件)?

我尝试了每个模式有一个单独的ant任务,但不知何故,这不能用作Ant处理第一个任务,然后说下面的模式的"文件是最新的"!

ant xsd jaxb xjc

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

用于拖放的JLabel鼠标事件

我希望通过覆盖它上面的鼠标事件来启用JLabel上的拖放功能,但是当我在mousePressed事件中定义拖放时,mouseReleased不会对该JLabel生效.难道我做错了什么 ?

            Thumbnails[I_Loop].setText("1");
            Thumbnails[I_Loop].setTransferHandler(new TransferHandler("text"));
            Thumbnails[I_Loop].addMouseListener( new MouseAdapter() {
                public void  mouseReleased(MouseEvent me) {
                       System.out.println("here mouse released");
                  }
                public void mousePressed(MouseEvent me) {
                    System.out.println("here mouse pressed");
                    JComponent comp = (JComponent) me.getSource();
                    TransferHandler handler = comp.getTransferHandler();
                    handler.exportAsDrag(comp, me, TransferHandler.COPY);
            });
Run Code Online (Sandbox Code Playgroud)

*缩略图是JLabel的数组

运行程序时,拖放工作,但"此处鼠标已释放"语句不会打印.但是,当我从mousePressed()方法中删除负责DND的代码时,将打印"此处鼠标已释放".

这段代码有什么问题?

java swing

6
推荐指数
2
解决办法
7737
查看次数

如何使用APScheduler安排间隔作业?

我正在尝试使用APScheduler(v3.0.0)安排间隔作业。

我试过了:

from apscheduler.schedulers.blocking import BlockingScheduler
sched = BlockingScheduler()

def my_interval_job():
    print 'Hello World!'
sched.add_job(my_interval_job, 'interval', seconds=5)
sched.start()
Run Code Online (Sandbox Code Playgroud)

from apscheduler.schedulers.blocking import BlockingScheduler
sched = BlockingScheduler()

@sched.scheduled_job('interval', id='my_job_id', seconds=5)
def my_interval_job():
    print 'Hello World!'
sched.start()
Run Code Online (Sandbox Code Playgroud)

要么按照文档工作,但工作永远不会解雇...


更新:
事实证明还有其他与环境相关的问题,导致任务无法运行。今天早上,此任务运行良好,而昨天起未对代码进行任何修改。


更新2:
经过进一步测试,我发现“间隔”作业通常看起来很不稳定...上面的代码现在可以在我的开发环境中使用,但是当我部署到临时环境时不起作用(我正在使用heroku应用程序)。我还有其他apscheduler的“ cron”工作,它们在舞台环境/生产环境中都可以正常工作。

当我为“ apscheduler.schedulers”记录器打开调试日志记录时,该日志指示添加了间隔作业:

添加的作业“my_cron_job1”求职商店“默认”
增加就业“my_cron_job2”求职商店“默认”
增加就业“my_interval_job”求职商店“默认”
计划开始
试探性地增加就业-它会得到妥善安排,当调度开始
增加暂定作业-计划程序启动时将正确地安排它以
查找要运行的作业
下一次唤醒应于2015-03-24 15:05:00-07:00(在254.210542秒中

将间隔作业设置为5秒后,下一次唤醒应如何从现在开始254秒??

python apscheduler

5
推荐指数
3
解决办法
2万
查看次数

从shell脚本返回到makefile的输出

我尝试过这样的事情:

VAR := $(echo \`find . -name ".txt"`)
Run Code Online (Sandbox Code Playgroud)

但当我从目标内部回应$ VAR时,我什么都没得到......

bash scripting makefile

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

如何通过ant将完整的文件夹添加到jar文件中

我想用蚂蚁创建一个像"胖"的罐子,不仅包括通常的类,清单文件等,还包括我的'libs'文件夹.

我尝试过:

<jar destfile="myjar.jar" update="yes" basedir="${libs.dir}"/>
Run Code Online (Sandbox Code Playgroud)

但这会将'libs'中的文件添加到jar文件的根目录中,我希望在jar中拥有libs文件夹(当然包含它包含的所有内容)

我可以自己在jar中创建lib文件夹,然后将文件添加到jar中的特定位置吗?

ant jar

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

bash:如何仅更改文件列表的基本名称

可能重复:
makefile:如何在basename中添加前缀?

我有一些文件(我从中得到find bla -name "*.so"),例如:

/bla/a1.so /bla/a2.so /bla/blo/a3.so /bla/blo/a4.so /bla/blo/bli/a5.so

我想重命名它们,如它变成:

/bla/liba1.so /bla/liba2.so /bla/blo/liba3.so /bla/blo/liba4.so /bla/blo/bli/liba5.so

...即将前缀'lib'添加到基名

关于如何在bash中做到这一点的任何想法?

bash rename prefix

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

C++与Java中的构造函数和变量名

我正在学习来自Java背景的C++(多年前知道一点C)......

在Java中,通常的做法是在构造函数中使用"this"来区分作为构造函数的参数传入的变量和类中声明的变量:

class Blabla {

    private int a;
    private int b;

    Blabla(int a, int b){
        this.a = a;
        this.b = b;
    }
}
Run Code Online (Sandbox Code Playgroud)

我喜欢这个,因为变量Blabla.a和作为构造函数的参数传递的变量表示同样的事情,所以它们应该具有相同的名称是合乎逻辑的......

是否可以在C++中执行此操作?

c++ constructor this

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

GIF/PNG图像的透明部分在JLabel java中以黑色显示

我有一个图像(gif或png),其中有一些透明的部分,当放入JLabel时会显示为黑色.

    ClassLoader cl = this.getClass().getClassLoader();
    ImageIcon img = new ImageIcon(cl.getResource("resources/myPicture.png"));
    label = new JLabel(img);
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题?

我不需要JLabel,也许有更好的方法可以直接在JPanel上正确显示图像(即透明度)?

谢谢大卫

java swing transparency jlabel

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

使用smtpd.DebuggingServer作为STMP服务器从python发送电子邮件

我正在尝试使用Python发送电子邮件并使用以下代码:

import smtplib
import datetime

SERVER = "localhost"
PORT = 1025

FROM = "me@mydevice.com"
TO = ["myemailaddress@something.com"]

SUBJECT = "test"

dt = datetime.datetime.now()
TEXT = "blabla bla @ " + str(dt)

message = """\
From: %s
To: %s
Subject: %s

%s
""" % (FROM, ",".join(TO), SUBJECT, TEXT)

server = smtplib.SMTP(SERVER,PORT)
server.sendmail(FROM,TO,message)
server.quit()
Run Code Online (Sandbox Code Playgroud)

没有安装/设置任何STMP服务器,我只是使用这个:

python -m smtpd -n -c DebuggingServer localhost:1025
Run Code Online (Sandbox Code Playgroud)

代码似乎运行正常,没有错误,服务器甚至通知我:

---------- MESSAGE FOLLOWS ----------
From: me@mydevice.com
To: myemailaddress@something.com
Subject: test
X-Peer: 127.0.0.1

blabla bla @ 2014-01-29 14:44:37.219724
------------ END …
Run Code Online (Sandbox Code Playgroud)

python email smtpd smtplib

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