设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6802|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * I5 k- X8 N' X! t9 h

8 D0 }1 E1 D6 d- [! `: |1 }本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" z) S; {" [3 D4 T6 `6 Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' f- E0 F+ e+ E; V' r- x- Y4 ^swarm.SignatureNotFoundException4 x/ h$ \4 B$ F" b7 X+ z7 B
        at swarm.Selector.<init>(Selector.java:76)
, @' l" T$ E* o4 H/ b        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) E4 [8 E' z# U! p; ~        at ActionGroupDemo.main(ActionGroupDemo.java:67): q3 |/ s3 Y% a( U* L' S. n: B) @

7 @) `; Q4 c. m' v4 P
# q0 b& U( q3 d3 F; m8 Fimport swarm.objectbase.SwarmImpl;/ T1 C8 ^+ x* e$ k7 ]( e
import swarm.objectbase.Swarm;
/ v! C  c& w8 d) cimport swarm.activity.ScheduleImpl;8 M( @7 E7 ~! ]: P% l; J
import swarm.activity.Activity;
; b  Z  E' V2 a, F+ q, Jimport swarm.activity.ActionGroupImpl;% F5 H* p+ ]) D2 k+ T3 \6 H
import swarm.collections.ListImpl;; J. L6 L' m% r; X% q6 Q
import swarm.defobj.Zone; 3 j8 L. L& M* {
import swarm.Globals;$ w+ V! `0 @& e, e1 s5 Y  ~/ R3 `+ w' y
import swarm.Selector;& j8 w2 g/ a$ s. }( e
import swarm.activity.ActionGroup;
* y9 N1 X" S$ uclass Agent {( h" b& _* v) D4 _; ~  T
        char id;5 M' R! L+ \9 }5 {) Q2 K

. C& U# P+ q' z+ X& h# F/ I1 e' ?( p        Agent(char id) {
* W1 d9 I1 z" x  T- u& K$ ?5 e4 I                this.id = id;7 i7 X" @: ?8 l/ u; k- P
        }& s( g! y- d) V/ }6 Y$ L$ J

8 U4 s- b7 @" m; y3 x: _  s        public void agentStep() {
  L5 W  n: p' Y                System.out.println(id + ":" + Globals.env.getCurrentTime());
- _6 N0 X, j+ \0 d        }
  V" h- ]' Y! p# M, Y}
, ~9 A' O% `1 v1 Y+ h: H  Y% l$ X+ J0 b9 `  s3 R7 X8 P, L& v
public class ActionGroupDemo extends SwarmImpl {
9 k" @3 s* M, X        ScheduleImpl schedule;
8 ?* ]- T" U0 |$ J. v/ Z  [9 _        ActionGroupImpl actionGroup;
& K2 W: u) }0 }6 N. x: u/ t5 t. |        ListImpl list;
' e5 z6 o6 C0 Y, }% ]3 T5 ^# ~+ ?        char Id = 'a';( M0 f& o8 Q* ^% F' c& i4 D

! `) f; P5 s: g' @$ m  U) @: C# W9 ~        ActionGroupDemo(Zone aZone) {4 h$ K! b6 b8 b' w& Y5 j) y& {
                super(aZone);
. K) B' ~6 v0 a% L) q# x' T' W' f                list = new ListImpl(aZone);
2 V0 D1 {; n- v* V; b                swarmSetp();- Y: p" `( R# H4 o
                actionGroup = new ActionGroupImpl(aZone);+ Y' l# y" S$ o4 I5 s. C* j: a
                schedule = new ScheduleImpl(aZone);
$ ~& x! W8 ~* h1 P* A, ^1 c& U6 C' p                try {1 R7 _7 d4 L) N
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
! Q) o, T/ w2 H5 j6 W                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 f. C6 W' ]- g( H3 o* r* [
                        
' V6 t# a1 e  ]0 }$ L) T                        actionGroup.createActionForEach$message(list, agentSel);
  n+ C( g+ M" K, ~                        actionGroup.createActionTo$message(this, swarmSel);1 ^  G2 C0 u. y  E" N' M  s
                        schedule.at$createAction(0, actionGroup);: `7 i) c  |$ j4 C  A5 V
                        schedule.at$createAction(1, actionGroup);
) ]2 ^3 X+ I4 R                        schedule.at$createAction(2, actionGroup);/ l( y) v. `4 N( l6 Q
# o. J; _* \( y- |- _
                } catch (Exception e) {5 q1 D' s5 X% r, w( A
                        e.printStackTrace(System.err);8 ^& n' M) d# g
                        //System.out.println(e);! w( B0 x) F2 i; F
                        System.exit(1);
: j( i9 c/ z8 _, X3 I) T4 N                }' h$ Y: G4 U/ a6 ?) v

2 V% K) D% {' a* X. ]) }& _3 b" D! @( {
        }
1 J& ^7 U( r2 h4 a) ?1 T5 J  M. _- ]7 N; C* ^
        private void swarmSetp() {
: R! _- @! e6 k5 e                list.addLast(new Agent(Id));
& c" |2 m9 s+ M$ [- h                Id++;
. J! h2 Q. j' V9 z5 L- e4 a        }8 f- P! @5 }$ S* P! g1 f
8 v5 I/ Q* r/ z. g1 d
        public Activity activateIn(Swarm context) {1 o0 V4 B/ E5 p! W0 ~* X
                super.activateIn(context);
; k$ u1 h9 ^/ }* W# N                schedule.activateIn(this);
+ G" h- [  \, g% e7 q9 Z                return getActivity();
3 d5 R& f  d& s4 W0 z( b  P. l        }8 z4 f( ?5 _" e/ `' [+ Q

( U9 z+ f7 z0 o        public static void main(String[] args) {3 G# V0 g6 `: E0 N* U: i+ g, o
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* \' d6 g8 j6 b5 [+ ^                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! K1 v/ H9 i9 P% c3 z3 y; g                swarms.buildObjects();
  R0 E1 L0 e$ \4 w                swarms.buildActions();" _  I9 a( X8 Z, E
                swarms.activateIn(null).run();
+ T8 [/ g! L. Q$ d1 `        }1 t  ?+ ^0 r/ W, V

( g- ?  Z' q# s1 x, z+ [1 p4 w}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-9 19:45 , Processed in 0.015698 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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