设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7146|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 e! g+ j& @% m% @. q) K# X

4 e8 u9 d: U% Y% p本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 K& m% O: R/ V! ~1 ^
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ j$ }9 z2 A8 K' u' _$ W9 x2 ^
swarm.SignatureNotFoundException  Q6 c/ `- y6 D4 q7 z; [# _
        at swarm.Selector.<init>(Selector.java:76)
5 @5 x3 n- p3 V6 a" F/ P        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ g8 ]+ S+ v# k( j9 `
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
' v$ q7 l  v3 H
# Q1 I6 n" n; f# {7 _4 d
" Z0 W4 G. X7 Dimport swarm.objectbase.SwarmImpl;# A/ E3 @; {+ I9 ]
import swarm.objectbase.Swarm;
1 |% @6 x+ c! s% S  E# T. cimport swarm.activity.ScheduleImpl;
2 B2 C, D0 i- n4 H4 I( Z7 _8 qimport swarm.activity.Activity;
# Q+ T* R$ F9 N1 K, v; `import swarm.activity.ActionGroupImpl;
0 J2 ?. C- \5 _! qimport swarm.collections.ListImpl;
& T; r! }  N; Limport swarm.defobj.Zone; 1 I% w* b0 Y$ u: |
import swarm.Globals;
* P, t( S8 c0 Q4 W% w, cimport swarm.Selector;
' g0 D8 A; A: w1 Fimport swarm.activity.ActionGroup; - X8 n' j# k* K: L' V/ }. ~& ]
class Agent {* P8 A2 @2 s7 B/ E3 A$ e
        char id;
* P$ ^5 _, y3 Z6 s7 }5 A. n* \' z0 C( G0 I
        Agent(char id) {0 y- R: L5 x: N; `# d
                this.id = id;- u  Q" ^( l4 K7 {' i
        }) }2 a/ k& n7 Z8 V

2 D( Y; y. N3 D) I* ^$ f        public void agentStep() {0 O9 b% Z3 g  @5 O
                System.out.println(id + ":" + Globals.env.getCurrentTime());
3 T, R6 x1 Q$ B8 S; K# B: {        }
) ^8 t/ e' {& o: r& Y6 z}
$ ~. ?: e* v# ?: ?% r8 x9 v- e+ o9 t4 n: D# U* x; ?$ y. b: G
public class ActionGroupDemo extends SwarmImpl {( E. _9 \# }" o0 O
        ScheduleImpl schedule;; d* ?+ N, f1 Y9 T/ {: i! ~
        ActionGroupImpl actionGroup;! l/ n! A& f9 |! s! t$ Q2 r# Q
        ListImpl list;8 E; b* w  \( e1 i" b
        char Id = 'a';
7 W3 ^; ?$ C, J! r' z- E: D+ w8 e. Q
        ActionGroupDemo(Zone aZone) {6 x6 V7 u* d7 w. o" s5 i: r- w
                super(aZone);+ ~7 e' j+ O5 T8 i) I7 Z/ @
                list = new ListImpl(aZone);
- d/ @0 z5 f# |                swarmSetp();
  `& }$ S: y) A                actionGroup = new ActionGroupImpl(aZone);
" X# e7 u( N, O: N9 Q2 j! m! O$ _                schedule = new ScheduleImpl(aZone);& f' T& a2 X4 X& Z3 s9 o- }& W
                try {; K0 b! I" k; F5 E# e: {9 s
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 k. S- O8 z. A4 {* S, L                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 M1 B: [- h8 i4 f
                        $ ]# l3 E' M, b6 _& z2 A
                        actionGroup.createActionForEach$message(list, agentSel);: W5 y' t7 ^" t- V2 j+ J7 Q
                        actionGroup.createActionTo$message(this, swarmSel);7 v, ]& t1 ^: w# x/ T
                        schedule.at$createAction(0, actionGroup);$ f$ E( a" J# f; H( c
                        schedule.at$createAction(1, actionGroup);
% P1 A) E7 P8 i3 T$ ]1 i0 t6 ]                        schedule.at$createAction(2, actionGroup);
2 s! Z7 q  T9 J
' W6 Q2 ?, F8 k2 s                } catch (Exception e) {' w# [# {2 ?& {) Z
                        e.printStackTrace(System.err);
6 N- ~, h5 s9 S4 V3 F                        //System.out.println(e);
& _1 u2 q* R; g; t                        System.exit(1);! D$ g5 g7 j; i" n
                }7 Y0 R) C7 C6 L- [% l9 `$ R
, S, M1 j- a9 |# q: `; ]' v

. S' T* t' ^' d9 ^0 k! F( f        }* r) w; R2 ^! F- @3 t
  R6 Z+ f: p* x: E1 S7 F7 K
        private void swarmSetp() {4 {8 i* q& [4 n4 x
                list.addLast(new Agent(Id));! u9 x2 d6 l5 g5 Y2 Q0 V
                Id++;2 C3 z9 C8 f/ I& V5 x
        }9 x0 i) t# ]4 D8 d

: P" A8 {3 E9 i5 M  b7 y+ S        public Activity activateIn(Swarm context) {
6 g1 a" A: @( k+ L6 u. r: d                super.activateIn(context);/ V+ ?5 t- C3 g7 O% X/ W0 h) b# M
                schedule.activateIn(this);
% \+ ~+ y" N" s- n                return getActivity();8 g# q5 s3 m; S. `
        }
) Y/ d' t  l( L3 O
9 D2 G' t: n6 l2 S9 C# Y+ P        public static void main(String[] args) {
! }5 M! R( j7 g+ `8 }+ m" }: n6 }  E                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 o. U7 t  J, ~; |5 G                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. f6 S( G) c  ?
                swarms.buildObjects();2 F) c0 y, _* t  L9 s7 p! n4 ^- y! X: d
                swarms.buildActions();
! x/ Y0 P( W. K: U                swarms.activateIn(null).run();
4 u/ u& Q2 c$ u. P" ^        }$ C1 X3 q9 e5 Y7 N- l$ ]# @' c; }
! I& R; ?  C) ^
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-20 22:11 , Processed in 0.017148 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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