可以通过<exclusions>在a中声明一个元素来排除依赖项中的工件.<dependency>但在这种情况下,需要排除从父项目继承的工件.正在讨论的POM摘录如下:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>test</groupId>
<artifactId>jruby</artifactId>
<version>0.0.1-SNAPSHOT</version>
<parent>
<artifactId>base</artifactId>
<groupId>es.uniovi.innova</groupId>
<version>1.0.0</version>
</parent>
<dependencies>
<dependency>
<groupId>com.liferay.portal</groupId>
<artifactId>ALL-DEPS</artifactId>
<version>1.0</version>
<scope>provided</scope>
<type>pom</type>
</dependency>
</dependencies>
</project>
Run Code Online (Sandbox Code Playgroud)
base工件,取决于 javax.mail:mail-1.4.jar,并ALL-DEPS取决于同一个库的另一个版本.由于这样的事实mail.jar,从ALL-DEPS存在于执行环境,虽然没有出口,碰撞与mail.jar那对父母,这是作用域确定为存在compile.
解决方案可能是从父POM中删除mail.jar,但是大多数继承base的项目都需要它(因为它是log4j的转换依赖项).所以我想做的是简单地从子项目中排除父项库,因为如果base是依赖项而不是父项pom 可以这样做:
...
<dependency>
<artifactId>base</artifactId>
<groupId>es.uniovi.innova</groupId>
<version>1.0.0</version>
<type>pom<type>
<exclusions>
<exclusion>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
</exclusion>
</exclusions>
</dependency>
...
Run Code Online (Sandbox Code Playgroud) InstallShield 2009 Premier,基本MSI项目:
卸载完成后,我想强制重启计算机.怎么样?
谷歌搜索发现,我必须将' REBOOTPROMPT ' 设置为' S'或'R'和" 重新启动 "属性.
如何设置这些属性以及具有什么值?
我想在g ++中使用unicode变量名.
它似乎不起作用.
g ++不支持unicode变量名,...还是有一些unicode子集(我从中没有测试过).
谢谢!
我对这段代码感到恼火.我正在尝试在录制音频的同时获得averagePowerForChannel和peakPowerForChannel,但每次我将其设为0.0
以下是我录制音频的代码:
NSMutableDictionary *recordSetting =[[NSDictionary alloc] initWithObjectsAndKeys:[NSNumber numberWithFloat: 22050.0], AVSampleRateKey,
[NSNumber numberWithInt: kAudioFormatLinearPCM], AVFormatIDKey,
[NSNumber numberWithInt: 1], AVNumberOfChannelsKey,
[NSNumber numberWithInt: AVAudioQualityMax], AVEncoderAudioQualityKey,
[NSNumber numberWithInt:32],AVLinearPCMBitDepthKey,
[NSNumber numberWithBool:NO],AVLinearPCMIsBigEndianKey,
[NSNumber numberWithBool:NO],AVLinearPCMIsFloatKey,
nil];
recorder1 = [[AVAudioRecorder alloc] initWithURL:[NSURL fileURLWithPath:audioFilePath] settings:recordSetting error:&err];
recorder1.meteringEnabled = YES;
recorder1.delegate=self;
[recorder1 prepareToRecord];
[recorder1 record];
levelTimer = [NSTimer scheduledTimerWithTimeInterval: 0.3f target: self selector: @selector(levelTimerCallback:) userInfo: nil repeats: YES];
- (void)levelTimerCallback:(NSTimer *)timer {
[recorder1 updateMeters];
NSLog(@"Peak Power : %f , %f", [recorder1 peakPowerForChannel:0], [recorder1 peakPowerForChannel:1]);
NSLog(@"Average Power : %f , %f", …Run Code Online (Sandbox Code Playgroud) 问题:数据库列有一个三态 (0,1,2)。每个值都在服务器端使用。
客户端代码(不能再更改)只能理解“0,1”。在客户端视图中,“1”与“2”相同。所以我想将数据库中的 SQL 查询更改为返回“1”,如果特定值 > 0。
我当前的解决方案是将 2 个选择(使用 UNION SELECT)与不同的 WHERE 子句结合起来,并返回 '1' 或 '0' 作为静态值。现在我正在寻找一种解决方案来“翻译”仅在一个 SELECT 语句中的值。
这是我目前的解决方案:
SELECT
dbo.Nachricht.NachrichtID, dbo.Nachricht.Bezeichnung, '1' AS BetrifftKontoeinrichtung,
FROM dbo.Nachricht INNER JOIN dbo.AdditionalData
ON dbo.Nachricht.NachrichtID = dbo.AdditionalData.NachrichtID
WHERE (dbo.Nachricht.NachrichtID in ( 450,439 ))
AND dbo.AdditionalData.BetrifftKontoeinrichtung > 0
UNION SELECT
dbo.Nachricht.NachrichtID, dbo.Nachricht.Bezeichnung, '0' AS BetrifftKontoeinrichtung,
FROM dbo.Nachricht INNER JOIN dbo.AdditionalData
ON dbo.Nachricht.NachrichtID = dbo.AdditionalData.NachrichtID
WHERE (dbo.Nachricht.NachrichtID in ( 450,439 ))
AND dbo.AdditionalData.BetrifftKontoeinrichtung = 0
Run Code Online (Sandbox Code Playgroud) 我需要获取字符串的最后一个字符.假设我有"测试者"作为输入字符串,我希望结果为"s".我怎么能用PHP做到这一点?
我有一个场景,我想通过从今天的日期开始的8个工作日来查找日期.假设今天的日期是04/21/10.现在我想显示日期是04/09/10.Weekends应该被排除在外.
例如.如果今天的日期是04/21/10
减去周末:周六 - 04/10/10,04/17/10周日-04/11/10,04/18/10
输出结果是04/09/10.
我想用C#做这件事.
任何帮助或建议都会有所帮助.
谢谢,Sumit
我想将rsync任务自动化为cron作业.由于它需要密码,我无法做cronjob.我需要指定密码和rsync命令,否则我会将密码存储在一个文件中,我会从中读取.我的命令看起来像这样:
rsync -aPe "ssh -i ' . $server->{'ssh_key'} . '" ' . $server_lock_dir;
Run Code Online (Sandbox Code Playgroud)
那么我在哪里输入密码?
来自:http://ejohn.org/apps/learn/#2
Function.prototype.bind = function(){
var fn = this, args = Array.prototype.slice.call(arguments), object = args.shift();
return function(){
return fn.apply(object,
args.concat(Array.prototype.slice.call(arguments)));
};
};
Run Code Online (Sandbox Code Playgroud)
谁能告诉我为什么第二次返回是必要的(在fn.apply之前)?
还有,谁能解释为什么args.concat是必要的?为什么不重写为:
fn.apply(object, args)
Run Code Online (Sandbox Code Playgroud)
代替
return fn.apply(object,
args.concat(Array.prototype.slice.call(arguments)));
Run Code Online (Sandbox Code Playgroud) 我对Graphics.DrawImage方法有一个非常奇怪的问题.
我在Panel控件中有PictureBox控件,AllowScroll属性= true.程序根据用户选择的区域在小部件上剪切图像.
我加载图像300x547并选择区域(红色矩形):
alt text http://img341.imageshack.us/img341/8796/63796391.png
程序正确切割图像:
替代文字http://img689.imageshack.us/img689/6459/69242903.png
然后,我加载另一个图像427x640:
alt text http://img34.imageshack.us/img34/7950/56727000.png
然后,结果我看到图像没有正确切割.每个img.jpg文件都有适当的宽度和高度,但绘制的图像太小: alt text http://img641.imageshack.us/img641/1977/25643796.png
这是代码片段 - 它保存用户选择的位图区域:
Image OriginalIMG= (Image)((PictureBox)panel1.Controls["picBox"]).Image.Clone()
Bitmap bmp = new Bitmap(selectedAreaRECT.Width, selectedAreaRECT.Height);
Graphics g = Graphics.FromImage(bmp);
g.DrawImage(OriginalIMG, 0,0, selectedAreaRECT, GraphicsUnit.Pixel);
g.Save();
g.Dispose();
bmp.Save(AppDomain.CurrentDomain.BaseDirectory + @"\Temp\" + "img1.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);
Run Code Online (Sandbox Code Playgroud)
如您所见,图像A和图像B的img1.jpg的代码是相同的.我试图解决这个愚蠢的问题太久了,我不知道这个问题的原因是什么.我尝试了DrawImage方法的不同重载,但没有成功
解决!System.Drawing.Bitmap的dafault DPI值是= 96,如果我用DPI!= 96打开图像,则会出现上述问题.要摆脱它,我需要使用SetResolution方法:
Bitmap result = new Bitmap(width, height);
result.SetResolution(OriginalIMG.HorizontalResolution, OriginalIMG.VerticalResolution);
Run Code Online (Sandbox Code Playgroud)
这解决了问题:)感谢大家的帮助!:)
c# ×2
asp.net ×1
avfoundation ×1
g++ ×1
gdi+ ×1
java ×1
javascript ×1
jquery ×1
maven-2 ×1
objective-c ×1
php ×1
pom.xml ×1
prototypejs ×1
resig ×1
restart ×1
rsync ×1
select ×1
sql ×1
sql-server ×1
ssh ×1
string ×1
unicode ×1
uninstall ×1
variables ×1
winforms ×1