设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6876|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 e" q% Z% Y. A# ^8 d! J( w! o/ W, @  R6 R1 w+ W* u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 d5 Z" J% O: H) A, Y" H以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; p6 i* h% n- O* ~8 K- H2 L
swarm.SignatureNotFoundException
2 J. E1 m% C8 N& W8 S' r% T        at swarm.Selector.<init>(Selector.java:76)
3 Z! b6 d% l1 n9 X0 ?' u# w        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 [1 q- j! R8 `  ?% x+ M" ?0 G6 z        at ActionGroupDemo.main(ActionGroupDemo.java:67)' r- g; f- }$ L
1 s, t+ S$ ~5 y; Z2 g

) |7 W1 R1 s5 R6 H: Fimport swarm.objectbase.SwarmImpl;3 u6 x- C' U) Q/ v
import swarm.objectbase.Swarm;, P4 S+ l* v. Z- |' q- v! S2 n
import swarm.activity.ScheduleImpl;$ K0 w7 K2 e# S3 S7 h5 W& _
import swarm.activity.Activity;
7 p' Y2 o9 o% x3 M+ d, |import swarm.activity.ActionGroupImpl;
' H' J% D' p2 [$ T* V8 X3 s( uimport swarm.collections.ListImpl;' @5 ], h1 ]1 ]9 f6 j
import swarm.defobj.Zone; 2 A8 w; p1 v' M5 e6 L
import swarm.Globals;7 S& y& e! K/ a- H/ p# A
import swarm.Selector;2 C$ y2 _. P  r$ k2 W( Z
import swarm.activity.ActionGroup; & R: k0 B  f/ n- c5 m2 q
class Agent {* ~9 D( Z1 V9 o- O
        char id;2 h1 `$ _1 d6 L% B( y
( f; b* \7 [" ?/ k3 U
        Agent(char id) {
" O- Y9 c0 b6 o4 H* B& w  b                this.id = id;( K. h# N% h- R2 p
        }
9 N, `. m' |/ M# U
9 t, J% u' X* |/ M        public void agentStep() {! d+ ^4 ^5 P! {; G% t7 k& Y2 e8 {
                System.out.println(id + ":" + Globals.env.getCurrentTime());' o5 V8 v: _' S2 K  v
        }' t& k% p4 n# L
}
3 L3 d1 A4 R* w' E; V+ u7 s( {6 g
public class ActionGroupDemo extends SwarmImpl {
5 N- ?8 T$ D+ l" y        ScheduleImpl schedule;, C: A! r/ o) n- t0 L3 g: r
        ActionGroupImpl actionGroup;2 }! j7 T- o" C
        ListImpl list;
  i  |- ]* n6 d: w        char Id = 'a';
3 I0 d0 g0 b0 q, R- Z/ ^* M, Z0 C% ^3 U2 _6 U( f- K
        ActionGroupDemo(Zone aZone) {
; \; ^  I' O8 {! l8 l8 q& U) M% X7 m: W                super(aZone);4 c& N, w; `9 \- ^6 e# \
                list = new ListImpl(aZone);: M0 j2 W( a* Q3 I
                swarmSetp();
0 @3 e0 C& i; O5 H0 ^                actionGroup = new ActionGroupImpl(aZone);- n( I& w/ C0 v! ~' _9 ]
                schedule = new ScheduleImpl(aZone);
1 Q0 x, Z( ~5 F6 o                try {
$ Q5 b# X/ q1 _4 j2 i2 H                        Selector agentSel = new Selector(Agent.class, "agentStep", false);8 r/ Z  T+ K6 n! N5 F/ |9 D
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行  a- i( |4 H+ A# N
                        
; w; B8 N2 T2 B# V4 L                        actionGroup.createActionForEach$message(list, agentSel);
1 a) t1 L- ?5 Z$ e6 d+ s                        actionGroup.createActionTo$message(this, swarmSel);( k. h6 y( R% j# N
                        schedule.at$createAction(0, actionGroup);
* [8 f. o5 _1 r  _' z3 @0 R4 @- m                        schedule.at$createAction(1, actionGroup);
  N( J5 }9 t( H! ^. q                        schedule.at$createAction(2, actionGroup);3 X1 L& a$ L  M/ k4 d
& ^' T+ W8 V0 }" X$ }: U/ |
                } catch (Exception e) {
9 V) C1 O/ N% b4 x7 q$ `; P9 ~                        e.printStackTrace(System.err);
6 ~- X; i: M8 |( w, A+ Z( C0 b                        //System.out.println(e);6 l2 K- [% ^, S& Z; R! Y' q
                        System.exit(1);
) r( G/ ]# j6 @. z4 Q                }  @! F; s( T& X1 s! A9 I! k2 r
' z8 j0 A9 J# ~
2 W/ V+ B; F, ?: J. c
        }' b" T( X0 K  Y( w- {, _1 H
% Z* u% k! `6 l2 n3 C. t
        private void swarmSetp() {- R  P, n+ s# i! n$ k: k0 c# ]
                list.addLast(new Agent(Id));
5 q5 o5 O" b; r# C+ w; {                Id++;
& M: y) q. H6 n# `) F8 }0 g        }
& U; ~6 @$ k6 B9 F* _. _$ d5 a' t) O/ `& v0 o$ X3 r
        public Activity activateIn(Swarm context) {# W' d) U' M8 ~/ I5 W
                super.activateIn(context);7 I. u/ m/ s$ H+ K7 \1 R/ J, f
                schedule.activateIn(this);
) n$ h# i+ T' m# q* w                return getActivity();4 y) u; V+ a" c; k
        }9 k% A: \# e$ v% P: [8 q

) {. h1 P( Q+ h4 u! o' s+ @        public static void main(String[] args) {8 d, p7 i1 `  ~0 N% A- J
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 e$ R1 E# b8 P6 [5 p( g  f" e                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ i# t1 e" }. _  ^) @! S, n# ~! ^                swarms.buildObjects();2 J* [, g6 i6 k5 X' G$ Z7 P8 F
                swarms.buildActions();
! R8 _* a# L, f, a5 W                swarms.activateIn(null).run();
! Q- z% ]- \4 J& M1 p  t        }; U' R! C8 W, }

% ~, n- g: j- E; ~3 e: i1 X2 V}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-11 23:46 , Processed in 0.022198 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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