我有一些代码间歇性地工作,我不明白为什么(直到今天早上 Windows 自动安装了一些更新,但没有与我的项目中使用的 .NET 4 版本相关)。
我的密码箱...
<PasswordBox x:Name="TboxPassword" Grid.Row="1" Grid.Column="0"
controls:TextboxHelper.Watermark="Password ..."
controls:TextboxHelper.ClearTextButton="True"
Margin="10, 10, 0, 0">
<i:Interaction.Behaviors>
<misc:PasswordBoxBehavior Password="{Binding Path=Password, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, ValidatesOnDataErrors=True, NotifyOnValidationError=True}"/>
</i:Interaction.Behaviors>
</PasswordBox>
Run Code Online (Sandbox Code Playgroud)
我的行为:
public class PasswordBoxBehavior : Behavior<PasswordBox>
{
#region Fields
private readonly object _tryToExecuteActionSyncObject = new object();
private bool _isUpdating;
#endregion
#region Properties
public string Password
{
get { return (string)GetValue(PasswordProperty); }
set { SetValue(PasswordProperty, value); }
}
public static readonly DependencyProperty PasswordProperty =
DependencyProperty.Register("Password", typeof(string), typeof(PasswordBoxBehavior),
new PropertyMetadata(string.Empty, OnPasswordPropertyChanged));
#endregion
#region Methods …Run Code Online (Sandbox Code Playgroud) 我们使用OSGi包有以下场景:
BundleA导入包"com.mypackage".
BundleB导出包"com.mypackage",但该包来自添加到BundleB类路径的嵌套JAR文件.
为了编译OSGi包并自动解决它们的依赖关系,我使用的是ANT + IVY.
我配置了一个常春藤:buildobr任务,它正确地构建了OBR文件(手动检查).
接下来,我配置了实际的构建任务.
javac抛出错误,因为它不知道包"com.mypackage".它只知道指示JAR文件的类路径,并且不知道如何用它自己的类路径解释MANIFEST.MF.
问题在于构造的类路径.它不知道从BundleB中的嵌套JAR导出的"com.mypackage".
你是如何解决这类问题的?
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: BundleA
Bundle-SymbolicName: BundleA
Bundle-Version: 1.0.0.qualifier
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Import-Package: com.mypackage,
org.osgi.framework;version="1.3.0"
Bundle-ClassPath: .
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: BundleB
Bundle-SymbolicName: BundleB
Bundle-Version: 1.0.0.qualifier
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Import-Package: org.osgi.framework;version="1.3.0"
Export-Package: com.mypackage
Bundle-ClassPath: .,
nestedJarContainingComMypackage.jar
Run Code Online (Sandbox Code Playgroud)
谢谢