设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10693|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : `; e/ R0 i; }+ {9 @0 d& ?) L
" n: \0 c1 m) b7 C" r8 k; }! ^  u; p
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ ]2 K, X: p* v1 `# m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 F: f* T- h! r+ o4 |: L6 }$ G$ U5 v
swarm.SignatureNotFoundException
. G* ]  _9 W2 b- o% z* a        at swarm.Selector.<init>(Selector.java:76)" W$ c9 G: x. L1 @- B- W0 B' X+ A
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 \! x2 d) E! P- Y        at ActionGroupDemo.main(ActionGroupDemo.java:67)7 M* B) f, f9 B

* Y. x! m; y# v& p9 `& o) X% L- @( X" p
import swarm.objectbase.SwarmImpl;! T# C1 d' _, C
import swarm.objectbase.Swarm;
- J% y: X3 K' ]1 Kimport swarm.activity.ScheduleImpl;/ _$ `1 q- N; T9 V( q
import swarm.activity.Activity;5 q' w' u, z2 D) }' o0 L
import swarm.activity.ActionGroupImpl;
+ H/ y8 V' Q# p2 R) ~# @import swarm.collections.ListImpl;! Z. X& r4 C0 ^" Y- S  |8 `
import swarm.defobj.Zone;
; _" F! a7 T: _, g4 A& Zimport swarm.Globals;
3 {: e$ z" G6 c: {import swarm.Selector;4 s$ u$ Y- w3 A# T+ H
import swarm.activity.ActionGroup; : S3 B4 t! [- {2 J8 E8 V: f
class Agent {* u+ L) ?. N7 f& W& [) j
        char id;
8 ]$ F$ j! P/ D3 C( g% I- L
( u: s! G- k6 V9 D# ^" Q        Agent(char id) {
* b* P/ S" R$ m3 U6 }& u                this.id = id;
6 v: G6 Y4 G2 k. p        }
3 z% t* k9 f  |$ g0 z; |& g1 p  ^: D- v7 i- f4 a
        public void agentStep() {+ C+ x8 `$ z2 c0 Q
                System.out.println(id + ":" + Globals.env.getCurrentTime());7 }1 k5 [7 O( Z; @; J8 U
        }
) l( p7 J+ W/ v5 [( L, o2 r}
% S, W( X) I1 q1 ~6 P" v6 d5 j( h4 Y* `: V0 }1 g
public class ActionGroupDemo extends SwarmImpl {
0 j- f$ [- Z/ Z( j& B8 E        ScheduleImpl schedule;
8 L+ {# g1 ?. D: F4 p& k        ActionGroupImpl actionGroup;
% x0 c5 T3 O- r" X  z5 E        ListImpl list;
, K: @# ?# [( u- x  S        char Id = 'a';5 x! }$ B! T, c: \3 q

% X! w+ n/ {! ]$ F        ActionGroupDemo(Zone aZone) {6 B. l3 h9 y1 D3 w3 ?
                super(aZone);
8 c5 R1 j2 I" l* O, F& t* k! j                list = new ListImpl(aZone);( @8 b5 R# Y7 F" z; S
                swarmSetp();
3 \" Y" a6 k) C. u                actionGroup = new ActionGroupImpl(aZone);
  J* m) k2 f% z8 D9 |. q                schedule = new ScheduleImpl(aZone);
1 N6 ~( b. f( h% S                try {7 ?5 M2 v" ~- t( C2 N
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 u* \! }2 Y; w; x/ X' N7 m                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% G2 R1 j3 y3 y5 g" n) x                        
9 G6 D: g# {* ^                        actionGroup.createActionForEach$message(list, agentSel);
# Q; @" B" \, b+ x                        actionGroup.createActionTo$message(this, swarmSel);
# O: l* k% Z4 V: r                        schedule.at$createAction(0, actionGroup);
9 {- p" V- Z9 E9 |                        schedule.at$createAction(1, actionGroup);
& c: f0 y- }1 N0 N: I4 d1 A                        schedule.at$createAction(2, actionGroup);
2 O  s0 t( e  G6 }. [3 F4 W
1 M6 ~) B( O) {2 p% b( E                } catch (Exception e) {
4 X& `  A) q/ {                        e.printStackTrace(System.err);/ O5 X1 G  n* R% k5 \* t
                        //System.out.println(e);
. V) H/ B" r' j+ F! e                        System.exit(1);
$ X$ Y% z: |) k$ H                }
3 W9 h+ `) L' S. [  D6 S
$ c( g! i4 Z! V# a1 L& J/ C: r" Y6 H$ a: b* f
        }& a; ~( m' j3 G* V6 H

0 a( r) b4 @8 o2 i9 }* |        private void swarmSetp() {7 q4 D0 P  [2 P
                list.addLast(new Agent(Id));
0 u) t- Y1 a$ T! M7 d2 ^$ Q" r; ]: G                Id++;6 m; |( Z; }- C3 U) H
        }
) [6 d4 J: ~2 Y0 U+ B# V7 G  r- @' F. y; P( h* [
        public Activity activateIn(Swarm context) {
! _- n5 y2 H" V6 ]                super.activateIn(context);
, o, K" r& ~: B7 y  ^2 c  L' A                schedule.activateIn(this);/ m+ y8 _# A) {
                return getActivity();3 b1 p  ]5 b) [! R5 t4 d5 M
        }
. Q/ P! j2 h0 E. \
1 E" `# [; `+ v# g0 B; i& A        public static void main(String[] args) {
: p0 _8 {& d% j$ P4 f                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% U# O( [" P7 t, ^; k# f5 v7 x                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, y2 E8 M1 d$ R; @& |( o& F
                swarms.buildObjects();
2 a& S  {" ~" k  z/ V  I                swarms.buildActions();
9 u- U  ^9 N: v/ G! w! w( W                swarms.activateIn(null).run();
$ M0 l  I$ c! G; h% @        }
! J7 \- q7 u6 n1 t
9 ^' Q( z0 ^* K}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-20 21:19 , Processed in 0.014738 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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