设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12993|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ) f, `* ~3 M6 l$ @: X9 E
$ S3 `! [7 O( x+ w
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. o, Z) E# Z! L- U以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. C5 S; @$ K7 I+ }% R0 [7 oswarm.SignatureNotFoundException' C' U6 h( l# n; g: ]
        at swarm.Selector.<init>(Selector.java:76). {- _/ L. q" m, N. {9 d: v& X
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 t3 A- S- Q  B6 F* p, M( K
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 i4 Z+ ~' T# f3 f  u0 U( Q/ y# ?: v+ {  [" o) o1 i

* ^' i" d, T( Q% Q' Vimport swarm.objectbase.SwarmImpl;9 U" _" e: Q9 ]! L
import swarm.objectbase.Swarm;+ ?0 m( e8 L8 a% E
import swarm.activity.ScheduleImpl;7 v4 H/ o" K: I. M
import swarm.activity.Activity;7 a. l! `* p! x
import swarm.activity.ActionGroupImpl;* Y4 p: u: E/ ]7 B) o" ^
import swarm.collections.ListImpl;3 f1 k# R; s  }' }! ]( r
import swarm.defobj.Zone;
2 a$ G* K( m/ |import swarm.Globals;& R# L* W. x& Y9 ?- h1 x6 |
import swarm.Selector;
+ v& _2 S" \* ^, Simport swarm.activity.ActionGroup; 8 R) a( Q( H8 N/ K8 u
class Agent {* k! a* s; U$ R( B6 [% `' ~
        char id;' p/ |) q3 f5 t; p: ~

! a9 E* e5 O& D7 Q3 g4 k8 j. s4 O        Agent(char id) {7 t$ K1 f' A" t0 {5 C! D# o
                this.id = id;' V, J4 m/ R0 |6 h& ]. o
        }) p! O" t4 d0 `7 Y
9 ?# `( P: K7 Y- b+ U. y! x1 O
        public void agentStep() {
4 }( P. o1 M) k) \! x                System.out.println(id + ":" + Globals.env.getCurrentTime());
) i- w0 i+ v- e5 k7 j. O& Y" ^3 Z3 _        }2 R  i! p6 o+ h8 o. U- b
}
( d& c2 W' r) J* \7 R0 G' D3 ]; T2 Q
$ v0 w$ q2 U( Opublic class ActionGroupDemo extends SwarmImpl {3 r0 }* z% w$ _; h- ?* E9 S  }
        ScheduleImpl schedule;
5 N" I: T  l# X- J8 n6 y        ActionGroupImpl actionGroup;
% d  t! Q. W6 f* N        ListImpl list;
* s, V  F# W% c3 V        char Id = 'a';$ T7 [$ }- b7 H4 ^; e

# j- E. y; z' m+ M5 F5 ]+ T$ _, M        ActionGroupDemo(Zone aZone) {
2 s  `: Z: u# W- y+ o                super(aZone);! f; I5 ^1 q# K/ H
                list = new ListImpl(aZone);2 d/ Z5 t& {/ \6 O- k7 |8 }: Y
                swarmSetp();
, ~+ w  @( f# M& s' {" U                actionGroup = new ActionGroupImpl(aZone);4 f" R4 ~7 t* N. S" v) T' p
                schedule = new ScheduleImpl(aZone);  U; w) n- S" V) h6 z5 S
                try {0 a' g$ C! [7 `- J
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
" e0 J7 h) M  q7 o                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 x! S; }6 b! V                        . Y5 g* m5 s2 |, E. J0 r! A
                        actionGroup.createActionForEach$message(list, agentSel);
$ I# Z) i5 o# U) V                        actionGroup.createActionTo$message(this, swarmSel);7 Z+ H- i& a! n
                        schedule.at$createAction(0, actionGroup);( W% N8 }% g  J  J) p9 M$ z, p
                        schedule.at$createAction(1, actionGroup);/ E' [2 X, `" n7 w2 @
                        schedule.at$createAction(2, actionGroup);
3 x: F) D! o* a/ Q1 x& K! T" [# L. Z( w+ d1 k7 T9 l
                } catch (Exception e) {
6 J% F  U/ |$ A' `& d$ X                        e.printStackTrace(System.err);
# [: B1 B+ C' a                        //System.out.println(e);2 {3 f/ N# q0 T  n; W! ^9 {2 `
                        System.exit(1);
6 f2 k, _7 T) m                }
2 W# F# W3 j+ P# M, D+ @( A: Z0 I! f0 i3 ^( J" Q# m; k: B
1 N2 m' h3 T: u4 {
        }
( n0 o% ]" g4 @1 @
6 n  C) Q5 D- ~3 H' F  k0 f7 n        private void swarmSetp() {+ W% U- `: n2 r" N+ x) f* m! J
                list.addLast(new Agent(Id));
. k. o9 s6 R, b+ {                Id++;
+ I7 _  z. M8 ~1 a        }
2 A, f, e  Z1 |
1 B, y% a# C* f% j$ h" J        public Activity activateIn(Swarm context) {
; ~& V6 t8 @0 k  P  G                super.activateIn(context);
3 m; Z" M1 T# O( c, d( a                schedule.activateIn(this);
1 U* N/ s  \, g                return getActivity();
# y0 ?& }, o% k5 m8 w        }0 Z3 b2 Q' p# [! U$ e
) C) z( l& f/ J
        public static void main(String[] args) {
! L( p& T/ g" p2 z                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' z# v6 Q+ b' l/ u                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: ~7 w9 Z4 D" F* u5 R, n7 w
                swarms.buildObjects();: Q/ \" k) b8 j3 w5 E2 d
                swarms.buildActions();- A8 S) T- W2 u9 e) N& L& O
                swarms.activateIn(null).run();
3 W9 J$ V4 r8 x% c. X7 \7 \        }
3 E# }( i4 t6 m. H$ B- k$ ^. @
5 b2 T7 b2 N4 `8 `7 X0 j( h" {0 w8 R6 {}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-25 10:13 , Processed in 0.017342 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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