设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9749|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 K; M. f& J8 m& x  r
' ?  Z6 Q3 J, j0 [本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- d/ C& l4 P& _
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
0 f$ Z8 `# s+ I6 O7 `, i% Gswarm.SignatureNotFoundException
# ^! r( Q7 R$ J' d        at swarm.Selector.<init>(Selector.java:76)
+ h' _9 L% c0 n! Y6 N1 K, F        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ R' T' s+ B! I$ n, C% i6 A
        at ActionGroupDemo.main(ActionGroupDemo.java:67)- ~9 V/ f: {" g: Q
# X# n7 d, t$ S% ]  o' N; o

3 d( b% V1 _7 Z3 ~$ ?import swarm.objectbase.SwarmImpl;
4 {7 G5 H2 a2 b8 r$ {1 Jimport swarm.objectbase.Swarm;! X$ O) l3 F1 M5 ^
import swarm.activity.ScheduleImpl;4 Y. _, \% E( t! q$ J; g
import swarm.activity.Activity;
* E1 |4 u; H3 Himport swarm.activity.ActionGroupImpl;- _! t& o6 g$ m3 e7 x) R( C) G$ e
import swarm.collections.ListImpl;8 I' r7 I* l/ h
import swarm.defobj.Zone; 6 y5 ^7 ~/ z9 j9 B
import swarm.Globals;4 g3 n/ N  O0 r) y! }/ X% V6 B
import swarm.Selector;, |" s8 D2 ~+ `8 M+ ^% @
import swarm.activity.ActionGroup;
5 y6 Z  |1 T3 @+ k0 N3 M! \1 r" Zclass Agent {
, Y/ g; c+ _( H; E- ^        char id;* T2 K: `5 G/ W; t, X4 u+ N* g: @9 \
1 j8 \1 v- }  i7 R. P" V
        Agent(char id) {
2 a7 j* d( c/ v# W4 N5 W7 \1 A: k                this.id = id;0 i; y8 B; ?' }. W
        }8 U  K2 A$ b4 Y( S" B" F" p8 a

5 `( ~+ m8 U5 ]- c$ o! [, e        public void agentStep() {& d. K4 x! D4 g  p& [) e0 u9 ~# R5 P
                System.out.println(id + ":" + Globals.env.getCurrentTime());0 I; X4 F$ M8 a/ S0 z3 S/ _& N( L
        }1 i* G! X. p: n
}( J: U$ c( ]" ^6 W1 D& P

8 V/ Y6 h$ b; k/ U: I0 rpublic class ActionGroupDemo extends SwarmImpl {5 F4 w3 Q$ [' z+ Q5 d& j3 e  t
        ScheduleImpl schedule;) p4 W" ^( z1 x! t
        ActionGroupImpl actionGroup;
$ v+ D1 E3 Y( j$ k        ListImpl list;
* a$ t" ~7 Z/ Y. C: N: n        char Id = 'a';: \/ q2 D9 c( i8 U# h! D
6 [$ w, y: |7 U  r2 V4 @* g. B
        ActionGroupDemo(Zone aZone) {
% z+ E+ t* _8 n3 O; G- C" r" c" y                super(aZone);
# Y$ d7 q. a8 l2 N' {7 x                list = new ListImpl(aZone);
# A# {+ |8 @7 w  D: ?7 o                swarmSetp();; x0 @$ v8 m  L" y+ P* P  ]
                actionGroup = new ActionGroupImpl(aZone);
5 l2 x+ P) E$ u4 b/ N4 A                schedule = new ScheduleImpl(aZone);
: T* \( l  V6 ~4 _8 V& t( W                try {# T( ~! H* j0 Q0 l, r" k% I0 `- t- z
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);; }. h4 E: X2 i9 y. P
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行4 a* i! k3 H( J  d- l  ^
                        " \2 a( Z" y# B) }$ Z- n0 S9 l
                        actionGroup.createActionForEach$message(list, agentSel);- f3 x4 E6 K+ l% v# x: A# _0 r
                        actionGroup.createActionTo$message(this, swarmSel);; [4 Q% ~( W% e' a
                        schedule.at$createAction(0, actionGroup);
: ~1 d( T, a4 U8 h3 N# `                        schedule.at$createAction(1, actionGroup);- a( h" a+ f0 w8 u6 c
                        schedule.at$createAction(2, actionGroup);
" F3 H" O2 g& Z5 c
0 n! f7 X3 p+ d' R* N" H9 w" ]                } catch (Exception e) {, p6 }+ a% f7 J4 W7 S! E$ M8 w
                        e.printStackTrace(System.err);7 b% i6 ^; g; S4 J
                        //System.out.println(e);9 c5 u' }' H& L5 E0 D' B. i: u% y  z  g
                        System.exit(1);. p& m; w4 V" D
                }' l: y# G1 m- e5 t/ s: S" K
# x: A" ]3 P9 D" O  B+ |6 C9 G9 T$ p' B
! F2 D3 `4 N/ h3 b6 X$ A
        }
* f6 a7 E# [# {6 s) g3 T9 }- Y! _. a9 W7 q
        private void swarmSetp() {4 R% N* ~, F1 J: @
                list.addLast(new Agent(Id));% ?: J  O) P3 V+ z" z6 h- ?/ ^
                Id++;# B& L/ C! l" U1 V9 |' ]  O7 s
        }6 y# Z/ a! M' R, K( p6 F$ r- t) Q( v
5 P, z/ k( \$ j5 v: E1 s5 @) `
        public Activity activateIn(Swarm context) {
% f3 a$ z5 a; `7 f1 c4 p                super.activateIn(context);
2 g4 \% H0 U; ~* ?. T5 O                schedule.activateIn(this);
! b3 O2 X& q2 U* z8 ?! s2 x                return getActivity();
# D/ b& E" S8 z! n  v, D        }
# @: D+ e  i- n) g* O
/ i" w& T$ U6 ]5 h/ ?! b* ?9 W        public static void main(String[] args) {9 s( Y6 [  ~, q3 a
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 k/ Z5 n7 l! S3 i! ?2 P- L' t                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" v( W5 N8 m& c' u: }                swarms.buildObjects();  r# s' F8 B$ ]0 d
                swarms.buildActions();: j  A9 y& w9 h# u- K8 w; R' n  v7 w
                swarms.activateIn(null).run();
) S; |+ C9 k/ {; J3 G$ ?        }2 C( M# Y0 u7 T7 U# d' P
' V9 z7 K) k( p4 u$ t+ p
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-21 17:23 , Processed in 0.022132 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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