设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5203|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * ^* B& A7 C* P  c' y

& M' o5 j8 j: t3 u7 A本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, z8 t/ h! R3 R* ~+ g9 F- S% K& t. y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* v, W6 Y5 }! [+ q
swarm.SignatureNotFoundException( ^1 Z( g0 X3 s" J
        at swarm.Selector.<init>(Selector.java:76)6 s$ F" m' L4 e( G$ t$ _
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 r2 E; g1 |- i1 X: B* `, T        at ActionGroupDemo.main(ActionGroupDemo.java:67)* h9 n" O/ m( q5 X% ?! d. H7 E: |' Q( v
: @6 M. P1 @$ N

5 n" e0 N1 X# V+ S2 jimport swarm.objectbase.SwarmImpl;$ d* l  E) X- A3 H$ ^
import swarm.objectbase.Swarm;
  {: f0 u9 x# Simport swarm.activity.ScheduleImpl;. _& ?3 d3 T7 \+ L. S$ C, \5 ]- s3 Y
import swarm.activity.Activity;* {1 B- D7 Q5 U* {
import swarm.activity.ActionGroupImpl;
7 t+ F5 [6 l2 Vimport swarm.collections.ListImpl;# f  S0 b8 y8 e; E7 ?: G. o5 i
import swarm.defobj.Zone; / r# U7 L$ p  _
import swarm.Globals;. A2 k. u) f5 E! s% Y' |7 x5 T) Y7 k
import swarm.Selector;
- A9 ]& y9 C; s* Qimport swarm.activity.ActionGroup; 7 _5 ~7 L8 {5 |
class Agent {/ E/ H8 ~; S7 H3 }4 d9 K
        char id;4 @9 Z0 M8 _. g: G/ U7 v( s+ E
& R) U' O  S4 [4 ]
        Agent(char id) {
) L: L% x. ]4 Y2 ^0 T                this.id = id;# K2 ^) s' F3 W$ l2 ?; n
        }
+ }% }& [2 l) x" r7 m
4 q" H/ t, I/ }! G        public void agentStep() {! H. Y; M/ A& r% \8 m
                System.out.println(id + ":" + Globals.env.getCurrentTime());
& Y, P; A8 n4 w        }
8 g' E! ?3 J1 n' H}
. f; n/ E  W" P6 y
2 b, T& a; O5 Epublic class ActionGroupDemo extends SwarmImpl {5 ]+ W  g7 e! G, E' |9 T  }0 K
        ScheduleImpl schedule;
5 _" i9 L& s6 T- M" T        ActionGroupImpl actionGroup;: L& E& l4 G* V
        ListImpl list;# a; Z; y* F$ N
        char Id = 'a';1 H0 a( \. S7 ]3 Y5 V& d5 `; Q
3 ^5 V0 }) ~" {$ _" V$ t/ X3 h, A
        ActionGroupDemo(Zone aZone) {
3 y7 ?& b+ j7 Z" ?! c: Z                super(aZone);
7 J7 J7 h, S: w9 i$ W' _* `                list = new ListImpl(aZone);
7 `3 B7 A/ x4 G4 q3 }                swarmSetp();
/ V0 |& M4 q8 O: Z7 ^2 [) E                actionGroup = new ActionGroupImpl(aZone);
3 ~1 W, l6 q; ?                schedule = new ScheduleImpl(aZone);
3 t5 D: n3 L) H% G! {3 Z' Q! h                try {
4 F! g4 m8 ]5 t1 q0 }                        Selector agentSel = new Selector(Agent.class, "agentStep", false);' I: ^2 r' A6 X  D) ^# b
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( `0 n+ V* l* u' D9 |) m                        
# P3 m* ~" E- R4 D. c' ^                        actionGroup.createActionForEach$message(list, agentSel);, U  e& H1 Z# @9 y
                        actionGroup.createActionTo$message(this, swarmSel);
6 _1 U' U# d; p& y( q  L                        schedule.at$createAction(0, actionGroup);
6 F- H: w& F8 e# \+ J& I5 W                        schedule.at$createAction(1, actionGroup);9 j' W2 y# \8 n# Z6 m
                        schedule.at$createAction(2, actionGroup);
' K+ ]6 P; H9 |$ z5 v) k; x: K' b3 {
                } catch (Exception e) {, D- ^3 p* p2 Q% f5 Z% i$ N% q
                        e.printStackTrace(System.err);
: Q0 a( }5 p+ a/ {, c  Z( @0 M                        //System.out.println(e);' J$ G5 E9 j2 R9 W. Z- [
                        System.exit(1);
& O6 X& O) o3 x+ Z. u2 ~                }3 s: ?8 g! h( ]3 |* m  p
: J5 X4 o) \" F, B
6 f/ K$ K5 j$ W  v( ]
        }/ G' E: o, h8 w. p( U5 j# J
6 \3 T2 L- U- S, _1 _' r
        private void swarmSetp() {1 \( l" z) g6 a& E  r& r
                list.addLast(new Agent(Id));
) G% r' p' C; d                Id++;- a% Q3 s) m, P0 S/ [' X
        }7 |; T$ N- Y% ?( V! P2 Q1 S

, d. U( d- F+ W  o, _1 f* m2 @# S$ Y        public Activity activateIn(Swarm context) {
, S' |9 Z3 g  a( X( O2 ]                super.activateIn(context);
: E5 x3 w/ {4 m1 ]/ Q8 u  G3 G" e                schedule.activateIn(this);+ G5 m9 y- K7 s1 B3 }) Z; v
                return getActivity();
" u3 T' m$ r  W        }
5 T7 K8 e6 t) L+ G: u/ x% u* v" u
- u" A+ v& q/ d) u  b        public static void main(String[] args) {) X% {, E; I$ `* e. w# S+ P
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% n; S) e- `9 C* M* @2 n1 Y
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: Y4 t* Y' ~3 N+ O! P6 z3 w2 ^4 H                swarms.buildObjects();
) m$ k- K+ @) u+ Q7 M) \                swarms.buildActions();
# v4 {3 _3 C2 B. u5 r) y. K& c                swarms.activateIn(null).run();2 l* G- h( ]' d4 a& \
        }
' t9 k( i1 m- q* d. W& V4 p' L: P, `1 X3 V  K+ A$ j* Q0 ^$ K9 a
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-28 20:24 , Processed in 0.018641 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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