设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13785|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ B6 s4 k% p4 N+ a9 c, w; n3 X  b' L3 j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) l' j( f. }( F8 e/ C9 P# t3 v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: O7 g( D/ j9 Cswarm.SignatureNotFoundException, _! S( K/ {% k0 G! H9 F* q
        at swarm.Selector.<init>(Selector.java:76)
, N" H# g: b; _0 n" W+ w" D        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: I5 O, Z6 w- b        at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 l' j- [" Z8 d% n3 y
( K9 b1 m6 n) r7 D: I9 e2 m+ x# R/ p2 d. h: D
import swarm.objectbase.SwarmImpl;
1 n& s- C: V% H& l/ Uimport swarm.objectbase.Swarm;
6 [$ J, \8 o: o+ K: }1 aimport swarm.activity.ScheduleImpl;
2 }4 ~$ p. |: c3 B6 K7 w& k4 f( ?. ximport swarm.activity.Activity;/ f! m* m. P) P: y$ o) l
import swarm.activity.ActionGroupImpl;8 S0 S9 I% [  H( ?# M' C1 a% R& n
import swarm.collections.ListImpl;9 a$ i! k- T- [& P/ u0 x
import swarm.defobj.Zone; 4 t+ c* R8 D9 h+ U9 [0 K/ e
import swarm.Globals;" C; z. N  |' y! l( H) ], w
import swarm.Selector;
9 J: F  j* L1 A, ~) zimport swarm.activity.ActionGroup;
  ?. A* j! l$ G, j1 K6 h& l& _class Agent {. O. W$ p0 C1 ~; ?. b7 ~! v' [
        char id;
& x& {. B7 y1 K" F# s0 K- z, M
) i# m/ `4 V% L# [! x+ C+ v7 `' I        Agent(char id) {
' i7 B7 M% Z& a, W% W  e( R. R                this.id = id;
- k' c5 A; `3 Y: f5 Q        }
; i" {: D5 b* @+ V+ m) K' ]; N$ m, D4 z
        public void agentStep() {9 L+ t7 ^$ G& Q' n
                System.out.println(id + ":" + Globals.env.getCurrentTime());
* l0 C# e. Y, G7 }% |        }! B2 c7 P$ u' |
}
0 o5 `& G7 A. \7 G, ~  e$ i0 i: v2 I2 D" S8 _
public class ActionGroupDemo extends SwarmImpl {
/ t  W( k: K7 z8 o  t$ E. t        ScheduleImpl schedule;& l4 I# S- P2 s" f5 Y% G" X
        ActionGroupImpl actionGroup;
; Y1 ]. t" K0 G% w5 w        ListImpl list;
: t0 H  y: B- J% h6 J        char Id = 'a';, e/ W* k+ c  R6 z
( |3 ^0 W/ b* Y" L0 I% l
        ActionGroupDemo(Zone aZone) {! U( y0 C* [" h& F
                super(aZone);2 `8 Q! T7 B% v
                list = new ListImpl(aZone);
' {2 @7 t7 F9 ^6 u$ a' a4 g8 Q                swarmSetp();$ |  U! W& p' n+ J( j
                actionGroup = new ActionGroupImpl(aZone);
6 T) b$ h# y  v3 N& d                schedule = new ScheduleImpl(aZone);7 O! ~# L) t) [0 @) E# C- J
                try {" O: s: H/ @; y& z0 x3 b+ V, i
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);$ g3 T# Z! P) O5 E( j3 l
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( A3 N' o* l; A/ `1 m                        
5 \0 D( |( H! j6 x8 y2 `                        actionGroup.createActionForEach$message(list, agentSel);  k4 f5 |7 F  Z9 p4 [4 p' f" x+ R/ W
                        actionGroup.createActionTo$message(this, swarmSel);
& z( {% g; B4 d( d% R- ]& b6 u& E6 w                        schedule.at$createAction(0, actionGroup);
/ [! a% P; |  Z: O+ G' V                        schedule.at$createAction(1, actionGroup);
0 B0 L+ p" T/ M; U: K5 k                        schedule.at$createAction(2, actionGroup);
( x5 q0 j4 _7 r, v0 q) P
: O) @. C9 J3 [9 ?( u1 i; S7 y                } catch (Exception e) {! {) E9 D% W, O2 M
                        e.printStackTrace(System.err);, ?( V% J6 C2 s( d" `+ C; p/ ]
                        //System.out.println(e);6 k4 M  d7 d5 H
                        System.exit(1);
- M1 s" m1 _/ w* Q+ ^4 }4 r5 y                }
: i6 B) C# f1 A  n& W
7 E; ~, e0 x% H0 s" U7 d" r9 s7 [! k
        }. O$ c" u  V5 }1 ^9 g7 Y$ S% J
& R4 a8 h  H" Q% f7 n: q5 j; r
        private void swarmSetp() {
- U4 Y4 g6 U* l/ C: H                list.addLast(new Agent(Id));
# q# w, P- ~. X. K" N1 @! O                Id++;
2 ~; x" {6 Z  _( I7 i3 ?6 o        }$ L+ v3 }. E: _

- h& }: t- e2 [        public Activity activateIn(Swarm context) {
) E3 w6 _6 s1 p8 n                super.activateIn(context);
$ h2 s, e. e8 j( m                schedule.activateIn(this);
) n5 j) q# W% r                return getActivity();! L3 u& C3 W. B, @3 ~% S2 |* @6 x$ F3 N
        }
7 D5 k$ O% H" b
  O4 w7 G  r5 ^% [: B, p  a        public static void main(String[] args) {
9 _% m" z( `1 r8 n' J* R                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 O5 X& S5 F9 h0 R4 L
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ U1 B+ W& W  n' V8 ~9 I5 w0 O                swarms.buildObjects();
; h3 w# y: w1 ^                swarms.buildActions();& L0 v2 I6 C0 h1 J
                swarms.activateIn(null).run();  a7 B2 D, i6 ?' B- d
        }0 Q% X0 ?3 v* Z  C2 l* P$ E
* h: n; J$ J3 ]) H4 t& B. t
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-17 13:01 , Processed in 0.015460 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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