设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8678|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' @3 d; i5 O( i, {( ?

8 l( F  v$ @1 h本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& Y% d1 z% V6 w
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 @6 x, n# c9 t0 T5 z
swarm.SignatureNotFoundException9 W* B- |- e: k" |7 ~- ]
        at swarm.Selector.<init>(Selector.java:76)
/ q3 N0 d; {7 g, K' g9 N5 J        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& i( _! i* O+ k" P" @! P( y
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
; I7 X* c  T0 _# `! }$ e1 Y' t/ Z' o: ?
& ~5 T* B2 J5 n: t, c% d# \
+ j  Y: y' G6 n, Yimport swarm.objectbase.SwarmImpl;
- {) \2 U/ [% |) Nimport swarm.objectbase.Swarm;7 B$ Y* s  a! z# L5 w. y
import swarm.activity.ScheduleImpl;
$ C% h+ N7 s* y4 ?0 q$ \* a  h& Cimport swarm.activity.Activity;
- S0 c; @8 a8 nimport swarm.activity.ActionGroupImpl;7 Z* \5 d8 d+ v7 {) _  {- H% N, ~9 a
import swarm.collections.ListImpl;
3 ]2 r$ v  i8 Q+ J# @$ {) {import swarm.defobj.Zone;
4 ^1 D+ V% \1 W2 M! k/ y8 g. {6 U2 Simport swarm.Globals;
( s$ n- h8 \7 e: {" Himport swarm.Selector;% U# ^% U6 ^! b, t4 b7 q7 a/ U
import swarm.activity.ActionGroup; 4 ^( q6 V) M; [! k9 ~
class Agent {
; y; `4 x: C; D. o! {9 u        char id;5 J9 Y3 ~* x' U4 Q# e8 Z: M

/ b+ g3 {' {" {: Z$ v        Agent(char id) {2 R/ [8 f4 ?8 d$ i
                this.id = id;
+ r. E9 F. y) Z, Y3 e6 W6 u$ O5 Z        }
+ B- C: b0 ~. ?3 O; ?7 W
# [4 p3 Y1 j; ?% [        public void agentStep() {8 D; [3 j# i6 ^
                System.out.println(id + ":" + Globals.env.getCurrentTime());# P7 d( w7 \, T& p
        }1 f, r0 n& X7 d: \2 q: T' M
}  V, ?4 ^! Z: {& P

$ P! {6 u0 v4 c2 ~8 x& K. F- hpublic class ActionGroupDemo extends SwarmImpl {. X" P! N7 \3 `! m' x& c
        ScheduleImpl schedule;3 U/ g8 \+ V, l7 Q0 h: d: A/ b3 V9 P
        ActionGroupImpl actionGroup;7 E3 l- r( u# j/ x
        ListImpl list;: ?" K. k% i8 T, m5 {
        char Id = 'a';
; z& a. A: z. I9 v. m7 q7 F& i3 q) y
4 p. O# g* W6 F9 Z6 X& o% q. _% q9 v        ActionGroupDemo(Zone aZone) {
6 [6 o2 f/ J7 A' s8 t                super(aZone);. e' K/ Y& w' k* S0 F
                list = new ListImpl(aZone);  D* ]+ ^5 o' K' b0 {3 z7 j
                swarmSetp();! P& W: {; g, [7 i+ k
                actionGroup = new ActionGroupImpl(aZone);2 x2 c6 ~9 _- b
                schedule = new ScheduleImpl(aZone);
& G4 i. S8 u1 y" i  B                try {2 d3 @. A/ Y3 c4 ?# {: m4 c# E: h
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
; e4 u* k5 K* S7 y2 j8 T                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 e! D1 q% M) V! X7 Q                        
. x4 K; J, \- }: _                        actionGroup.createActionForEach$message(list, agentSel);: ?' N. q( ~: W3 C
                        actionGroup.createActionTo$message(this, swarmSel);$ a& _( C* w& W+ b
                        schedule.at$createAction(0, actionGroup);
& _$ M5 l, U1 c                        schedule.at$createAction(1, actionGroup);; c4 l, J, W$ i
                        schedule.at$createAction(2, actionGroup);9 n; d2 \, C9 W
! e. H2 h& E" h! @
                } catch (Exception e) {
" ]6 _6 B' }' I                        e.printStackTrace(System.err);
) Z9 X* Q& E1 K. S, E                        //System.out.println(e);
, M- P% Y+ Y' Z0 S( N                        System.exit(1);! H1 m; w. P) x' c1 R
                }# [  L# S' V, ]  k, C: o" r6 U8 J; i
" ?4 H9 ~$ R+ @

9 Q- {# B9 Z) k: @1 N        }
  p; F  _2 v2 ?9 o% u! O1 y0 z1 P1 O+ ]3 g
        private void swarmSetp() {
6 [4 H! s2 R) f                list.addLast(new Agent(Id));# b: B) G( N4 E( T4 Y
                Id++;
. \1 v- \& d5 ?- k        }$ \0 T1 D4 q3 \' S( b
; P& ^# U/ y# j9 i% u, e
        public Activity activateIn(Swarm context) {" P- w% D! D4 @8 n& P
                super.activateIn(context);
" ^3 q6 b7 ?% ]6 L* X                schedule.activateIn(this);) [; S! r0 E9 r6 Q6 @. |2 N  u) d, _
                return getActivity();
* W' h9 a; l$ K        }
) m4 v! R5 n3 w+ |  s* r' L# [( l0 z0 A9 z
        public static void main(String[] args) {
1 P  X. x6 X- O8 M9 y                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 R5 f  z9 ?; k# y( L0 K                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 B1 R, S( e( X" X! e. B                swarms.buildObjects();
) c' X3 _! ?& U8 y& B! c                swarms.buildActions();
( M; E5 J0 I: ~/ L* p7 j                swarms.activateIn(null).run();  n2 _! ~6 x/ g6 N6 b- F
        }8 B) ]& M- y5 O

- `9 l) Z' Q  f! l3 Z" J0 B  W}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-19 10:04 , Processed in 0.022206 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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