设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10451|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, N/ o8 K8 X6 d2 M# v# {, w) ^* C
- h* V* W1 |* G1 T本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: Z. L! p: |7 ^5 d2 T0 s
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' G/ m+ }' q6 S8 {6 z0 T
swarm.SignatureNotFoundException
' |: k5 B) C6 S- X" p0 c! Z        at swarm.Selector.<init>(Selector.java:76)6 D6 m* S: X) J" ^$ }
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) X+ h7 ?- r- |1 ^
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
! d% A" _7 D& A6 Z8 C) Y  d/ l& }& W4 U5 ~1 g: s8 [6 i

% h# f4 t2 v3 A) ^2 J9 j: Dimport swarm.objectbase.SwarmImpl;
0 v) D# _* N6 N' limport swarm.objectbase.Swarm;
5 k- T9 L4 Q! B. O3 s& @' fimport swarm.activity.ScheduleImpl;
" g) |: ~* c2 B" pimport swarm.activity.Activity;! y1 _4 v7 i) i& o6 ^
import swarm.activity.ActionGroupImpl;
2 Z2 ?4 o7 ]5 P$ f1 ~import swarm.collections.ListImpl;
0 |/ l2 O9 n8 Z' \, O; Gimport swarm.defobj.Zone;
) I- S, m, ?6 Simport swarm.Globals;
1 h% u$ m" `; m- L9 B8 _import swarm.Selector;/ u$ {- p9 Q# I# `
import swarm.activity.ActionGroup; % T+ e- p2 h5 M, b
class Agent {
/ F0 D7 q9 M9 `- i        char id;
: T0 ^: i! i6 a1 C, |, G: z1 e  j
        Agent(char id) {
" G) t3 u$ z# b4 S) b; ~+ {                this.id = id;- m1 S# N2 T8 Z" Q
        }
' R% }& D, c6 N/ _) O* e
7 `# U( U5 [6 t  @. a        public void agentStep() {0 Q: o1 q' r/ N# L, K6 J
                System.out.println(id + ":" + Globals.env.getCurrentTime());
3 T$ O% n  s* ]. m7 O4 T% k- O- N1 v        }
/ w; i6 r# R9 {+ A+ I/ c. V+ Y}. H) g1 [3 U8 n2 T/ H
4 x4 D! {& M! M4 O1 k0 `& W: |: g% y
public class ActionGroupDemo extends SwarmImpl {
! Q# B' r# z& |# m& H" t        ScheduleImpl schedule;9 H3 q7 h2 [" }2 Z  l/ @' X4 e; H
        ActionGroupImpl actionGroup;5 \# W" I) A/ S  r/ q) U# q
        ListImpl list;* h5 |$ P0 @% l6 v+ o& V
        char Id = 'a';7 b/ K+ ^, Z, ~3 \! U& v

7 j; X6 m, I7 t( {5 F5 c) x        ActionGroupDemo(Zone aZone) {
' Q8 \- x6 b6 O; S) q8 I3 S                super(aZone);  l. p/ w: u6 S
                list = new ListImpl(aZone);& x1 C9 J7 V- p% p; y8 Q' f  Y2 Y
                swarmSetp();/ n0 m( h  J/ r3 [* u; b
                actionGroup = new ActionGroupImpl(aZone);2 g) G. A+ Q" [
                schedule = new ScheduleImpl(aZone);2 ?9 u* e& e0 u$ [& M
                try {4 Y0 D. P6 I" y+ B, G* |" [( Y
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
% Y/ d" u8 u+ z                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ x' E8 S$ R  S# g" H* Q9 M                        ! @# P: I8 N. l, w/ T% e7 s
                        actionGroup.createActionForEach$message(list, agentSel);
5 M5 A9 g6 {1 v# A$ z- p7 G                        actionGroup.createActionTo$message(this, swarmSel);/ |5 D" g) L# g$ }8 n, U9 g
                        schedule.at$createAction(0, actionGroup);4 T- N0 q+ N, c
                        schedule.at$createAction(1, actionGroup);% ~" P3 y8 z+ w! x' o  E; c
                        schedule.at$createAction(2, actionGroup);
6 L, }+ E( X  [; b- m2 U% R% H  @0 T2 i# P: g: q) L
                } catch (Exception e) {
  P& n% @% g8 P                        e.printStackTrace(System.err);$ k: {3 ]. l7 ^
                        //System.out.println(e);! P, W3 o' _; R& S* `0 \* |
                        System.exit(1);
( [! H: F/ ^/ `& H, [                }
6 B* @! |1 K% X
+ ~) h& l( x7 d
7 ~8 |/ u# X. |& r5 `# x  Q        }( ~) T. y5 c& V9 i- M8 S

+ s; C8 `2 O* y        private void swarmSetp() {. w" s7 i( D  [! y( c% Y3 G
                list.addLast(new Agent(Id));- F" ?" ^) s9 S
                Id++;7 A8 g9 ~9 v. Z* P& o
        }
% D. d7 z4 y5 Q0 I% M* I& b9 z, ]7 F7 n& ]0 |3 ~
        public Activity activateIn(Swarm context) {
: E  A0 R3 R& r; Z; n: l6 g                super.activateIn(context);
6 Q9 I9 H" R0 A! g! ^                schedule.activateIn(this);
! b1 T2 W% l- z0 r/ X                return getActivity();0 V% b- i* [8 M' d3 V8 K6 t9 B
        }
  v4 P3 i8 q9 @2 {7 `. T* f- _9 _# f/ _3 c0 Y& h/ I8 r3 Q1 u
        public static void main(String[] args) {
! `/ K' c! }& P                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 J* @0 E+ \$ F9 f
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! v7 n1 s- s2 e) c7 Z                swarms.buildObjects();
, f' z5 k2 u1 }, [                swarms.buildActions();4 Z! J: t* b8 v2 k, o6 J
                swarms.activateIn(null).run();
% Y8 d2 Q; w- p0 z( H8 e        }/ D( c% q3 ?0 b% M; ?
" V$ [- [+ D2 ^) i/ V
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-6-14 13:40 , Processed in 0.021660 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表