设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13205|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑   L/ r3 `! S2 ?, ~( N- s! }8 y
, X7 a) x  L7 w* T# P. z( r3 r
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
6 X! G8 y1 y* I% _  U以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 E1 y' F# A7 j) ^9 A
swarm.SignatureNotFoundException
/ q7 P& ?" l. p0 P6 [8 o; P, k) e: {        at swarm.Selector.<init>(Selector.java:76)
  ]  j' g! |1 o$ u        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. {8 O. j, J8 n) C& m/ s" h2 `7 v        at ActionGroupDemo.main(ActionGroupDemo.java:67)) X+ g+ w! o: {+ D: p0 F2 r0 t7 [7 X

* H" L2 E* A* {6 g$ c1 d* a1 b; Q& _8 f
import swarm.objectbase.SwarmImpl;, T2 J# _: L4 _* n, w; k
import swarm.objectbase.Swarm;
$ S- N& {2 O  y& rimport swarm.activity.ScheduleImpl;
+ s; e9 }( Y- V  Z! c; {, _! H! Eimport swarm.activity.Activity;
7 Q2 k0 j  Q9 g/ ~; Jimport swarm.activity.ActionGroupImpl;
: M/ I% O% N9 l- Z+ ]. @* aimport swarm.collections.ListImpl;
: a: Q$ j1 a* T1 Rimport swarm.defobj.Zone;
% U( H( Z. r# W5 J8 yimport swarm.Globals;: ?& i! F9 A0 ?- Q5 [) v
import swarm.Selector;$ [' k' s. w$ W" V2 _" g
import swarm.activity.ActionGroup; : w" J* R! p5 |' Z
class Agent {. K/ s8 m: K4 R! r* M/ q2 O
        char id;6 r' c' D! R, u$ t6 L" ?
( w! w5 N6 g+ k
        Agent(char id) {/ r2 B9 \; @& e5 h( J
                this.id = id;8 q) [% M5 z) A5 q* [  G+ U7 w
        }2 |4 _2 G$ @8 N4 a3 e
0 C6 c1 L* r  V
        public void agentStep() {
4 G' E4 C) j% ~: C: v9 K" g                System.out.println(id + ":" + Globals.env.getCurrentTime());
9 ^/ _. @" L) r, h0 N2 ], h" ?        }
/ B0 b, x' m3 C/ T}- \5 l' [. O- A7 C/ h) r# `/ U
9 F" b1 p2 ^5 N  l- P0 K
public class ActionGroupDemo extends SwarmImpl {$ h$ \% l3 I- e2 O8 D3 v
        ScheduleImpl schedule;
3 h% y: V, B8 n* X5 q        ActionGroupImpl actionGroup;( g/ D, @5 N6 A9 f' k' i
        ListImpl list;. g0 K5 K9 J) V# w
        char Id = 'a';) y# C, ?% F$ {
3 @! a( u$ F8 B! x- Q
        ActionGroupDemo(Zone aZone) {
* m* \: `1 F  R8 w+ C2 H9 l) G                super(aZone);
2 Z/ E/ ]. z) m+ ]                list = new ListImpl(aZone);
' x1 E# Z8 T9 _! N4 B( x% m                swarmSetp();
% e( o, g3 R6 D& @( {                actionGroup = new ActionGroupImpl(aZone);
  @7 t4 y8 i$ I                schedule = new ScheduleImpl(aZone);
) }- `( g' x5 l4 R                try {
& D' |* b3 K, g4 g8 m& L) |                        Selector agentSel = new Selector(Agent.class, "agentStep", false);2 o+ c; P: @1 e$ f' N7 |
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 e# M! O& z; Z3 p& S
                        
7 s3 g4 U" A& w                        actionGroup.createActionForEach$message(list, agentSel);
+ `  Z: a' s9 G  V                        actionGroup.createActionTo$message(this, swarmSel);5 a' f  H7 Z: x6 d: Q! ?
                        schedule.at$createAction(0, actionGroup);! }. K$ q( {: w# A; M4 ?! E1 k
                        schedule.at$createAction(1, actionGroup);1 w3 N! S. o& n
                        schedule.at$createAction(2, actionGroup);
4 n- R. o% `% ]0 a6 d1 x/ F" ?# q: t3 Z4 S2 U3 z
                } catch (Exception e) {
0 A4 u1 a- g3 t! T. M9 [                        e.printStackTrace(System.err);
, w) b$ Q4 @* M                        //System.out.println(e);. b8 |6 g0 V! e9 q
                        System.exit(1);
  A& |* I/ C- n9 t" i3 {3 M                }# v5 X0 G" `6 v% ]. d3 @  F8 N+ j

* q+ C: ]6 H  H/ Q+ |. ~  [8 P+ y/ I* d" i$ c
        }* i3 s2 ]4 Z  ~0 |+ L

7 V* a0 |# K8 K6 P' T/ X        private void swarmSetp() {- ~1 v3 q& L$ ?: S$ u
                list.addLast(new Agent(Id));
2 `; a+ T0 }) Y                Id++;
3 Z4 B* \( @. F        }
& v- }) H0 u; k9 I
6 }( l* n( z6 z        public Activity activateIn(Swarm context) {
4 n+ Q1 @- S4 ~( V                super.activateIn(context);
. R* y% F, c6 a+ Z7 G, E                schedule.activateIn(this);
" T4 R; u% S5 u- ~% ~                return getActivity();
! _2 M2 r0 A0 Y; S4 c3 G) s4 W        }; x2 _- E4 ^+ R; ]6 A
' N. f" O6 s0 G: ?6 W9 B" ]7 ?( m
        public static void main(String[] args) {
0 P/ Q! f( ]6 g                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 b) s# O& C: M, y, K& f8 ^
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 S! @. H5 D( K% e" j                swarms.buildObjects();
8 \* i0 X& v& ~( k  w* V$ o& _                swarms.buildActions();
8 j" I) |; j  i! E/ Q' D" {                swarms.activateIn(null).run();% F2 m( @. o. Y  ]6 x
        }3 J2 U6 \5 {" q

3 e9 X- Y4 f; g5 Q2 u6 _}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-31 13:19 , Processed in 0.017072 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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