设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9421|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 4 R: i* {/ F4 _5 z& Y; H

, ]) V8 G' c' v1 j) U$ B本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ g4 t. c( c9 X6 q' O5 h
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 t9 D7 c* E/ `4 n5 }) W( Z4 Aswarm.SignatureNotFoundException
$ ]% h+ ^. c* q7 i% ^- M6 Q        at swarm.Selector.<init>(Selector.java:76)+ Y' I9 r( D- Q- T' N
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! T/ i) U4 c1 v# A0 a1 D
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 ^$ g' E3 ?5 y: m8 H2 o$ w$ a( v0 D
& C8 v* P. }4 ?7 {( N' j1 L
import swarm.objectbase.SwarmImpl;% j6 f. U: `* u' U$ D9 N
import swarm.objectbase.Swarm;5 n9 r; p2 ~0 c2 p! Z/ G8 K! |
import swarm.activity.ScheduleImpl;
; K. J+ ~4 e& b/ `3 @import swarm.activity.Activity;
! w$ E) x7 i0 D5 q& {: a6 r% oimport swarm.activity.ActionGroupImpl;  X0 M/ V  b: F$ I  ~8 c
import swarm.collections.ListImpl;
( t. t& b* `6 W. \  R0 Dimport swarm.defobj.Zone; ' L6 G9 {% h, _% M$ \/ C; V
import swarm.Globals;
; v& \* s1 W1 V& J& g- \import swarm.Selector;( x( R% c2 M: p
import swarm.activity.ActionGroup; % E' Q% F# U& o) H
class Agent {- ?) e2 x, {* A5 S1 B1 U  ~1 o
        char id;
2 ?7 ?: O/ U, C
4 R8 {7 z( f7 u4 M% E        Agent(char id) {6 f( g3 r# Q; U; R: {* w: G5 t% E7 v
                this.id = id;- ]9 I& Q* S) ]. h/ Q9 E
        }# z  ]# H- ?4 G9 Y

" C$ c7 O( z  v; d        public void agentStep() {
3 @' V$ i2 Z: ?2 {                System.out.println(id + ":" + Globals.env.getCurrentTime());) C! r3 f8 }' Q& g0 G& ]
        }
& v- P# G& b; }! t1 d, @}
5 h. L- I8 }4 i. u, j- D. l5 P6 B5 w# ^
public class ActionGroupDemo extends SwarmImpl {
5 \9 M- s% {$ o. d' C5 h        ScheduleImpl schedule;5 l, `% ?2 _  @$ X( D
        ActionGroupImpl actionGroup;
$ s0 c) Y  N( c/ g. R4 K4 S        ListImpl list;
+ |, c) s3 G' v' x. f9 j' d1 q6 O: M$ p        char Id = 'a';) `$ R! T7 d9 B- _% a% \0 |/ w) J. @

' J: x8 I( @. s- E+ y        ActionGroupDemo(Zone aZone) {( }0 h9 j: o  g; C, ~
                super(aZone);. N# J$ O2 B$ V; `- G
                list = new ListImpl(aZone);
/ G8 c9 [- N$ Z( R' u! d                swarmSetp();1 ^( a4 `9 y4 X
                actionGroup = new ActionGroupImpl(aZone);/ W0 B% f% C2 o% C# v# _) K
                schedule = new ScheduleImpl(aZone);
9 c6 V2 R4 T6 d/ R                try {& T9 C, Z+ H0 P$ d
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
) F+ I) \5 A- H! G/ x! F                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; ]% R# S8 m- @) W) K; [2 @) H                        % x: [( y0 ~1 X0 N- @
                        actionGroup.createActionForEach$message(list, agentSel);* B# n+ m2 [! Z
                        actionGroup.createActionTo$message(this, swarmSel);
9 P- K; Y6 G; V8 V                        schedule.at$createAction(0, actionGroup);& Z4 k0 e- ?1 t" h) {: w8 ]
                        schedule.at$createAction(1, actionGroup);. G$ s- o! {; l+ c: P
                        schedule.at$createAction(2, actionGroup);
6 F9 E9 n) {+ F
# W! S; l' b# v6 O( Z7 G8 R! _                } catch (Exception e) {
/ e8 c5 V* e. H- P4 d8 z                        e.printStackTrace(System.err);
' q; V+ J* I$ w: w                        //System.out.println(e);) M1 t; r5 W. ^
                        System.exit(1);
( g4 X, N  q/ I7 X                }5 ]8 S4 c: f" z# t& |: i
" D* B' Z8 M$ ?1 S/ i
% ^& x" z# ]- P: p
        }
% e* Y  o* w3 O7 u
8 j4 A: t; b; u" |* h# ?# ]        private void swarmSetp() {
' B5 A' K" F0 |7 ^! n/ G) `  P                list.addLast(new Agent(Id));
6 X" ]8 `6 X. [+ W  r5 P. ~                Id++;
" l( W5 Q$ u! |. v& Z& O. o        }# I( N9 h7 e- A; `% o

( Z  u$ H5 X7 O) V/ l        public Activity activateIn(Swarm context) {' y: B: a  h0 Q  ]* [6 `8 [
                super.activateIn(context);
! \( F& X9 {" P2 p' J) v                schedule.activateIn(this);
. B0 p, F0 E6 l* W/ X+ s3 X9 o                return getActivity();
' f8 G. r# K3 [+ Y% _/ k9 s& j* w7 K        }
1 Y  b5 r, L1 ?: q8 f
3 z6 f2 u9 ~9 e0 q7 ?+ I7 ?* G        public static void main(String[] args) {8 f$ O, m" v$ c, B5 D
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 Y% {: F- A+ F4 C: P2 I) r
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! ^( n: {5 C1 l: E( S0 ^                swarms.buildObjects();
3 Q: J" |. o8 V  }& e/ C) L% Z                swarms.buildActions();, p- J! w) ]9 k; N8 C# \: R
                swarms.activateIn(null).run();
: S: t6 q! w5 v2 r2 l        }4 r6 Z% m7 S. f/ W
' T: E. z, p( o+ L& f4 q& E" h. u
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-11 20:35 , Processed in 0.017811 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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